mysql数据库主从

1,A、B两台服务器安装好数据库,保持数据库版本一致,且服务器时间一致。

A[Master:192.168.2.10]

B[Slave:192.168.2.11]

mysql数据库主从

2,进入数据库,检查是否可用

在centos7中,新安装的数据库有一个初始密码,执行命令grep "A temporary password" /var/log/mysqld.log即可获得

mysql数据库主从

mysql> set PASSWORD = PASSWORD('n07|PcZJU6iJCKvh^6+m');   #重置密码

Mastar配置[192.168.2.10]

[[email protected] ~]# vim /etc/my.cnf

[mysqld]
server-id = 1
log_bin=master-bin
log_bin_index=master-bin.index
binlog_do_db=cookietest

[[email protected] ~]# systemctl restart mysqld

[[email protected] ~]# mysql -u root -p

mysql> grant replication slave on *.* to 'cookietest'@'192.168.2.11' identified by 'ELvIMD9mSpHfrl7XNn&&DA'; #从库权限配置

mysql> flush privileges;     #刷新

mysql> show master status;   #查看主库状态
+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |      154 | cookietest   |                  |                   |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
 

=========================================================================================

Slave配置[192.168.2.11]

[[email protected] ~]# vim /etc/my.cnf

[mysqld]
server-id = 2
relay-log=slave-relay-bin
relay-log-index=slave-relay-bin.index

[[email protected] ~]# systemctl restart mysqld

mysql> change master to master_host='192.168.2.10',master_user='cookietest',master_password='ELvIMD9mSpHfrl7XNn&&DA',master_log_file='master-bin.000001',master_log_pos=154;

mysql> start slave;
mysql> show slave status \G;

mysql数据库主从

 

=============================以下测试============================

Master:主库创建数据库及数据表并创建数据:

mysql> create schema cookietest;

mysql> use cookietest;

mysql> create table names(id INT(9),name VARCHAR(30));

mysql> insert into names(id,name) values(1,'cookie');

Slave:从库查看结果

mysql数据库主从

大功告成!!!!!!!!!!!!!!