mysql主从配置

在两台机器安装MySQL ,用syrnc把两个数据库的内容同步一致
配置主
 
在配置文件 vi /etc/my.cnf里面添加
server-id = 1
log-bin=mysql-bin(生成二进制日志)
上面这两个是必须添加的下面这两个选择性
binlog-do-db=databasename1,databasename2
binlog-ignore-db=databasename1,databasename2
binlog-do-db=需要复制的数据库名,多个数据库名,使用逗号分隔。binlog-ignore-db=不需要复制的数据库库名,多个数据库名,使用逗号分隔。
 
[root@wang bin]# mysql -u root -p (mysql命令行里面命令结束都以;结尾)
 
授权 mysql> grant replication slave on *.* to 'wang'@'192.168.72.132' identified by 'wangyongyan';
on(对应哪个库授权)to (对那个用户授权)@(从的ip) ip变成百分号就是对任意用户 identified
by(密码)
 
flush privileges; (刷新授权)
 
flush tables with read lock; (锁定read 把内存的东西刷到磁盘)
 
show master status; (保持数据不变)
 
配置从
打开配置文件 vi /etc/my.cnf修改 必须加
server-id = 2(可以是任意数字 不能和主的相同)
注释掉 log-bin=mysql-bin
选择性添加 和主的对应
replicate-do-db=databasename1,databasename2
replicate-ignore-db=databasename1,databasename2
重启mysql服务/etc/init.d/mysqld restart
 
mysql -u root -p
 
slave stop; (停止slave服务)
 
change master to master_host='192.168.31.131', master_port=3306, master_user='wang', master_password='wangyongyan', master_log_file='mysql-bin.000003', master_log_pos=478; (最后这两个选项是主上锁定保持不变的那个数值)
 
slave start; (启动slave服务)
show slave status\G;(检查从的状态) Slave_IO_Running和Slave_SQL_Running: 的状态是否为yes
 
在主上解锁 unlock tables;
 
测试主从
在主上查看现有的库 show databases;
创建库 create databasw 库名;
在从上查看有没有刚刚创建的库 show databases;
在主上拷贝一个表 show create table aming.pre_forum_post; 打开以后吧表的语句复制粘贴,重新查看就会多出来一个表

posted on 2017-08-24 14:02  学习linux的菜鸟  阅读(299)  评论(0编辑  收藏  举报

导航