ubuntu mysql住从库的搭建

1,首先我们要确定一个从库一个主库,紧记从库只能读取不能有其他的操作,如果操作写那主从就失效了,那就看看我们这么搭建主从吧!

2、 环境:Ubuntu,Mysql (主从的数据库版本必须保持一致)

主服务器地址:192.168.11.186  mysql root密码:1111  数据库:Test

从服务器地址:192.168.11.108  mysql root密码:123

主服务器和从服务器待同步数据库数据须保持一致。

一,配置主库

1.1 更改配置文件sudo vim /etc/mysql/my.cnf在其配置文件中添加主服务器端配置

server-id=1    #服务器 id 

log-bin=/var/log/mysql-bin    #二进制文件存放路径

binlog-do-db=erp_database    #待同步的数据库(erp_database为需要同步的数据库,可以为一个也可以是多个数据库)

binlog-ignore-db=information_schema   #忽略不同步的数据库,这个可以不用写

binlog-ignore-db=mysql    #忽略不同步的数据库,这个可以不用写

 

1.2保存my.cnf文件,重启数据库(重启命令: sudo  service mysql restart),

1.3 进入终端:

输入用户名和密码:mysql -u用户名 -p密码 ( mysql -uroot –p1111 )

1.4给要连接的从服务器设置权限:

grant replication slave on *.* to [email protected] identified by ‘123456‘; (这里有一个问题就是你复制的话,要修改这单引号)

给了一个用户之后,进入主数据库给这个用户添加任意权限。

1.5输入命令 show master status;       # 找到File 和 Position 的值记录下来;

1.6输入flush logs更新日志文件。(除非连接同步时,否者不建议使用)

其实,主服务器是不需要设置太多信息的,只需要第1条中的前三行就足够了。

 

二,配置从库:

1,更改配置文件sudo vim /etc/mysql/my.cnf   ,在其配置文件中添加从服务器端配置:

 

server-id=2    #服务器 id ,不能和主服务器一致

 

replicate-do-db=erp_database #待同步的数据库

 

binlog-ignore-db=information_schema   #忽略不同步的数据库,这个可以不用写

 

binlog-ignore-db=mysql    #忽略不同步的数据库,这个可以不用写

 

binlog-ignore-db=mysql    #忽略不同步的数据库,这个可以不用写

 

binlog-ignore-db=test    #忽略不同步的数据库,这个可以不用写

 

 

 

2.2保存my.cnf文件,重启从数据库。重启命令sudo service mysql restart

 

三,从主库导出数据库,然后在把数据导入到从数据库中。 

四,二进制文件:

1,在主库中打包转化为txt文件:
 mysqlbinlog mysql-bin.000003 > /home/yxp/111.txt

2,然后远程发送到从服务器上,执行111.txt文件,登录mysql ,输入:source 111.txt  把二进制文件补填从库数据。

五,在刷二进制文件的时候,不要退出mysql,输入stop slave;

然后输入:

 

change master to
master_host="192.168.11.18",
master_user="这是上面给的用户名",
master_password="123456",
master_log_file="mysql-bin.000008",  //这点是我们刷最后一个二进制文件
master_log_pos=11034; //最后二进制文件的 at 的最后一个值

 

六,设置完之后,执行 mysql> start slave; 开启slave线程;执行mysql> show slave status\G   (没有分号),查看

 

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

 

这就说明mysql主从配置成功了!!!

 

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。