设为首页 加入收藏

TOP

MySQL-5.7.10主主同步的安装和配置(一)
2017-04-24 10:23:16 】 浏览:686
Tags:MySQL-5.7.10 同步 安装 配置

1. 安装 1


2. 修改MySQL 的 root 密码 3


3. mysqld_safe和 mysql.server 3


4. 主主同步配置 3


4.1. 创建同步用户 3


4.2. my.cnf 4


4.3. 配置项说明 4


4.4. 设置同步关系 5


4.5. 验证 6


5. 常见错误 6


 1. 安装


这里安装的是最新的MySQL 5.7.10,下载网址为:http://dev.mysql.com/downloads/mysql/ 。


本文选择是的“linux - Generic”下的“Linux - Generic (glibc 2.5) (x86, 64-bit), Compressed TAR Archive”,它的二进制安装包名为mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz。


将MySQL二进制安装包解压后,可看到名为INSTALL-BINARY的文件,该文件有说明如何安装MySQL,本文基本参照它进行的。


由于官方提供的二进制安装包,编译的时候指定的“--prefix”为“/usr/local/mysql”,所以强烈建议将mysql安装在/usr/local目录下,否则安装过程会容易遇到问题。但同时建议将数据目录指定为一个足够大的分区下的目录。


当然,data目录也可以为软链接方式到足够大的分区目录,并且推荐使用软链接方式。否则在使用mysql命令时,经常需要指定参数“--datadir”,比如mysqld、mysqld_safe和mysql_ssl_rsa_setup等都需要指定“--datadir”。


如果不是安装在/usr/local/mysql,则需要为mysqld指定--basedir、--character-sets-dir、--language、--lc-messages-dir、--plugin-dir等众多参数值。


如果不能root用户安装,则还需要为mysqld指定--slow-query-log-file、--socket、--pid-file、--plugin-dir和--general-log-file等参数值。


这些参数的默认值,都可以通过执行MySQL的“bin/mysqld --verbose --help”查看到。


# MySQL安装目录为/usr/local/mysql,数据目录实际为/data/mysql/data


# 注意需以root用户安装MySQL,如果不能root用户安装,容易遇到安装麻烦


# 并请注意5.7.6之前的版本安装略有不同!


# 新建mysql用户组


groupadd mysql


# 新建mysql用户,并设置为不能作为linux登录用户


useradd -r -g mysql -s /bin/false mysql


 # 进入到mysql安装目录


cd /usr/local


# 解压二进制安装包


tar xzf mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz


# 建立易记的、与版本无关的短链接


ln -s mysql-5.7.10-linux-glibc2.5-x86_64 mysql


 # 进入到mysql目录


cd mysql


 # 创建数据目录


mkdir -p /data/mysql/data


# 建立数据目录软链接,让指向/usr/local/mysql/data指向/data/mysql/data


ln -s /data/mysql/data /usr/local/mysql/data


 # 设置目录权限


chmod 770 /data/mysql/data


chown -R mysql /data/mysql/data


chgrp -R mysql /data/mysql/data


chown -R mysql .


chgrp -R mysql .


 # 初始化(成功执行完mysqld后,会提供一个临时的root密码,请务必记住)


# 另外需要注意临时密码会过期,所以需要尽量修改root密码


# 进入MySQL Cli后,执行下列命令即可修改成新密码:


bin/mysqld --initialize --user=mysql --explicit_defaults_for_timestamp


 # 安装和配置SSL


bin/mysql_ssl_rsa_setup


 # 重置目录权限


chown -R root .


chown -R mysql /data/mysql/data


 # 启动mysql


bin/mysqld_safe --user=mysql &


 # 查看端口是否已起来(不修改配置和不指定参数--port,默认端口号为3306)


netstat -lpnt|grep 3306


 # 停止MySQL


support-files/mysql.server stop


 # 设置mysql随着系统自启动


cp support-files/mysql.server /etc/init.d/mysql.server


 以上使用的都是MySQL默认配置,如果需要定制化,可以通过修改文件my.cnf来达成。MySQL 5.7.10不带my.cnf,只有个support-files/my-default.cnf。


通过执行命令“support-files/my-default.cnf”,可以了解到MySQL搜索my.cnf的顺序依次为:/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf,这样可以复制一份my-default.cnf,然后再修改,如:cp support-files/my-default.cnf /etc/my.cnf。


2. 修改MySQL的root密码


由于上一步生成的是root临时密码,因此需要修改,以防过期不能使用。进入MySQL Cli后,执行下列命令进行修改:


SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_password');


并建议使用单引号括起密码,使用双引号有转义问题!


3. mysqld_safe和mysql.server


mysql.server会调用mysqld_safe,两者都可以用来启动MySQL,但停止和重启只有mysql.server具备。Mysql.server通过读取pid文件来停止MySQL,pid文件默认位于data目录,但可以通过命令行参数pid-file来修改。


可以为mysqld_safe指定参数--user,来确定运行mysqld的运行用户,如果不指定的话,默认为mysql(由mysqld_safe文件中的变量user指定)。


以root执行msyqld_safe或mysql.server启动mysqld时,mysqld会自动切换到--user指定的用户,如mysql。通过ps aux|grep mysqld,可以看到mysqld_safe运行在用户root下,而mysqld运行在用户mysql下。


4. 主主同步配置


4.1. 创建同步用户


启动MySQL,然后进入MySQL CLi,执行以下命令创建用于同步的用户:


grant replication slave,file on *.* to 'user'@'peer' identified by 'password';


flush privileges;


&n

首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Redis主从配置及HA方案 下一篇CentOS 6.8源码安装Redis

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目