/* @author:luowen @time:20113-07-24 给从服务器设置权限该用户 grant all on *.* to user@192.168.16.88 identified by 'passwd'; grant replication slave on *.* user@192.168.16.87 identifiend by 'pass' 在mysql 配置文件中打开bin-log日志选择项 查看最后一个bin-log 日志 show master status 清空所有的bin-log日志 reset master 刷新日志文件 flush logs 查看bin-log 文件 mysqlbinog --no-defaults mysql-00001.bin; mysql bin-log 备份 mysqldump -uroot -ppassword dbname -l -F > 文件存放路径 (-l 枷锁, -F 刷新bin-log日志) 更具position点恢复数据 mysqlbinlog --no-defaults --start-postion="start" --end-positon="end" 'bin-log日志文件' 主从服务器配置 1.mysql 配置文件 打开 log-bin = mysql-bin server-id = 1 (服务圈内唯一,不同) 2.flush tables with read lock(选做加锁解锁) 可以 mysqldump -uroot -pluwoen test -l -F > d:/test.sql 代替 从服务器配置 1.mysql 配置文件 server-id = 2 master-host = 192.168.16.88 master-user = user master-password = pass master-port = 3306 log-bin = mysql-bin 2.重启服务 查看slave 命令 show slave status 数据库命令 1.start slave 2.stop slave 3.show slave status 4.show master logs (查看所有的binlog日志) 5.change master to 6.show prosslist 数据无法同步 方法二: 1.stop slave 2.set GLOBAL SQL_SLAVE_SKIP_COUNTER =1 3.slave start 方法一: change master to master_host = "192.168.16.88", master_user = 'user', master_password = "pass", master_port = 3306, master_log_file = 'mysql-bin.000004', master_log_pos = 98; 启动slave服务器 Mysql> slave start; show slave status G change master to master_host='192.168.16.88', master_user='luowen', master_password='luowen', master_log_file='mysql-bin.000001', master_log_pos=107; ---------------------------mysql 5.5.1x以后配置变化---------------------------------------- 主配置不变,依旧是 server-id=1 log-bin=log binlog-do-db=database1 //需要同步的数据库 binlog-do-db=database2 binlog-ignore-db=mysql //被忽略的数据库 从配置改为: server-id=2 #master-host=192.168.16.88 #master-user= luowen #master-password= luowen #master-port=3306 #master-connect-retry=60 replicate-do-db=database1 //同步的数据库 replicate-do-db=database2 replicate-ignore-db=mysql //被忽略的数据库 这也提示了我们需要使用change master to 即: mysql>change master to >master_host='192.168.16.88', >master_user='luowen', >master_password='luowen', >master_log_file='bin-log.00001', >master_log_pos=107; 然后start slave;