不言不语

您现在的位置是: 首页 >  数据库  >  MYSQL

MYSQL

MySQL主从数据库配置

2022-06-03MYSQL
MySQL主从数据库配置

环境:

 

A: 192.168.1.1 作为master,没有数据

B: 192.168.1.2  作为slave,没有数据

 

一:主服务器上:

 

注意:mysql参数

 

binlog-do-db = 数据库名      (你要备份的数据库)

binlog-ignore-db = 数据库名  (你不需要备份的数据库)

如果没有在/etc/my.cnf添加以上2个参数,那就是说明备份所有数据库

 

(1) 确保/etc/my.cnf 中有如下参数,一般情况下都是都有的,但是以确保实验的成功率还是检查一下比较好。假如没有如下参数,自己手动添加,并重启mysql服务器

 

[mysqld]

log-bin=mysql-bin (启动二进制文件)

server-id=1  (服务器ID)

 

( 2 ) :登录mysql服务器,添加一个叫做beifen的用户,并授权给从服务器

 

[root@localhost ~]# mysql -uroot –p123456 登录mysql

这里需要指明一下啊 这个123456是我的mysql的密码

mysql> grant replication slave on *.* to 'beifen'@'192.168.1.2' identified by '123'; 创建 beifen用户,密码设置为123  并授权给192.168.1.2使用。

 

( 3 )查询主数据库的状态,并记下File和Position的值,这个在配置从数据库的时候用的到



二:从服务器上

 

(1) 修改配置文件/etc/my.cnf 将service-id=1修改为server-id=2

 

(2) 并重启mysql服务器

 

[root@localhost ~]# mysqladmin -p123456 shutdown

[root@localhost ~]# mysqld_safe --user=mysql &

 

(3)登录mysql服务器

 

[root@localhost ~]# mysql -uroot –p123456

mysql>change master to master_host='192.168.1.1',master_user='beifen',master_password='123',master_log_file='mysql-bin.000010',master_log_pos=257;

 

( 4 ) 启动slave同步

 

mysql > start slave;

 

(5) 检查主从同步,如果您看到Slave_IO_Running和Slave_SQL_Running均为Yes,则主从复制连接正常。

 

mysql > show slave status\G

如下图:


 

OK! 主从复制完成,现在可以去验证了

验证方法:去主服务器上新建一个数据库,然后登录从服务器看看刚才在主服务器新建的数据库在不在

注意:如果master服务器上做主从之前已经有数据了,我们就必须要把数据库导出来  然后导入从数据库 

文章评论