mysql 5.1.34 主从复制部署手册
********************************************************************************************
mysql 5.1.34 主从复制部署手册
********************************************************************************************
概述:
下文描述了,mysql的详细安装方法(mysql5.1.34.tar.gz)、基本配置、
mysql主从同步配置的详细操作步骤
--------------------------------------------------------
[1] 安装mysql
--------------------------------------------------------
shell> groupadd mysql
shell> useradd -g mysql mysql
shell> cd /usr/local
shell> gunzip < mysql-5.1.34-linux-i686-glibc23.tar.gz | tar xvf -
shell> ln -s mysql-5.1.34-linux-i686-glibc23 mysql
shell> cd mysql
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> scripts/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql data
shell> cd /usr/local/mysql
shell> cp support-files/my-medium.cnf /etc/my.cnf
--------------------------------------------------------
[2] 修改mysql root密码
--------------------------------------------------------
shell> /usr/local/mysql/bin/mysqladmin -u root password 'founder'
--------------------------------------------------------
[3] 设定mysql开机自启动及安装mysql服务
--------------------------------------------------------
shell> cd /usr/local/mysql
shell> cp support-files/mysql.server /etc/init.d/mysql
shell> chmod +x /etc/init.d/mysql
shell> chkconfig --level 345 mysql on
shell> service mysql restart
执行命令后显示结果如下
Shutting down MySQL.[ 确定 ]
Starting MySQL[ 确定 ]
--------------------------------------------------------
[4] 修改mysql 不区分大小写设置
--------------------------------------------------------
vi /etc/my.cnf
在mysqld下写如下内容
lower_case_table_names=1
修改完毕后重启mysql
shell> service mysql restart
--------------------------------------------------------
[5] 设置master 数据库
--------------------------------------------------------
vi /etc/my.cnf
在[mysqld] 中增加如下内容
server-id = 1
log-bin=mysql-bin
binlog-do-db=test # 需要同步备份的数据库名字
binlog-ignore-db=mysql # 不需要同步备份的数据库名字
修改完毕后保存退出,并重启mysql
shell> service mysql restart
备注说明:
在my.cnf已经默认存在,如果不存在,再填写如下内容
server-id = 1
log-bin=mysql-bin
--------------------------------------------------------
[6] 在master数据库中设置slave(从)数据库的账号信息
--------------------------------------------------------
mysql> mysql -u root -pfounder
mysql> GRANT REPLICATION SLAVE ON *.*
TO 'slave1'@'10.1.2.130' IDENTIFIED BY '8uhb&YGV';
GRANT REPLICATION SLAVE ON *.*
TO 'slave2'@'10.1.2.131' IDENTIFIED BY '8uhb&YGV';
mysql> flush privileges;
mysql> commit;
备注说明:
上述设置了两台slave(从)数据库的账号信息,如果您只有一台从数据库
只需要执行一条语句。
上述语句的含义
grant replication slave on *.* to ‘用户名’@'从注册的ip’ identified by ‘密码’;
--------------------------------------------------------
[7] 从数据库的配置
--------------------------------------------------------
按照[1][2][3][4]步骤安装并配置mysql数据库配置完毕后执行如下操作
shell> vi /etc/my.cnf
在[mysqld] 下填写如下内容
server-id = 2 #任意制定的一个整形的id号
master-host=10.1.2.129 #[1] 中安装的主服务器的ip地址
master-user=slave1 #[6] 中设置的从服务器可以访问到主服务器的用户名
master-password=8uhb&YGV
master-port=3306
replicate-do-db=test #[5] 中设置的需要同步复制的数据库的名字
master-connect-retry=60 #如果从服务器发现主服务器断掉,重新连接的时间差(秒)
配置完毕后保存退出,并重启mysql
shell> service mysql r