日期:2014-05-16  浏览次数:20404 次

linux下 mysql 5.5 数据库主从配置

说明:主服务器:'192.168.1.253',前提是主从服务器都正确安装完毕,redhat操作系统

?

1、/etc/my.cnf 主数据库配置

#一般已存在
server-id = 1
#需要进行复制的数据库
binlog-do-db = mydatabase
#不需要进行复制的数据库
replicate-ignore-db = mysql
replicate-ignore-db = test
replicate-ignore-db = information_schema
#生成的同步数据所需要的文件,序号从:syslog.000001开始
log-bin=syslog


2、重启mysql,登陆Mysql,设置从数据库所需要的权限:可以从任何机器登陆,账号/密码:slave/123456
grant replication slave,reload,super on *.* to 'slave'@'%' identified by '123456';


3、查看状态
show master status


---------------------------------------------------------------
1、/etc/my.cnf 从数据库配置,由于Mysql版本从5.1.7以后开始就不支持“master-host”类似的参数,用配置文件设置主从同步时,出现:mysqld: unknown variable 'master-host=127.0.0.1'

#将配置文件中的server-id该为2
server-id = 2
#需要进行同步的数据库名称
replicate-do-db = mydatabase

2、重启mysql,登陆Mysql,设置同步设置,其中syslog.000001为日志文件,master_log_pos=0为日志开始复制的位置,即:从syslog.000001的0位置同步数据,日志文件和行号根据实际情况进行处理
change master to master_host='192.168.1.253',master_user='slave',master_password='123456',master_log_file='syslog.000001',master_log_pos=0;

3、启动从数据库数据同步命令:
?? start slave

4、查看从数据库同步状态,Slave_IO_Status,Slave_Io_Running,Slave_SQL_Running
? show slave status

5、需要重新进行同步的时候,先停止同步服务器,重新设置,同步的日志文件master_log_file和同步起始位置master_log_pos:
?? stop slave

?

?

?