配置 数据库主从同步
1.分别在172.168.1.31 和 172.168.1.32安装mysql数据库
Yum install mysql mysql-server mysql-devel
Service mysqld start 分别启动mysql数据库
Mysqladmin -u root password “123456” 分别创建mysql数据库密码
进入数据库 mysql - u root -p 按键enter
输入密码:123456
分别在2台mysql数据库服务器上创建数据库
Create database haitian;
在主数据库服务器配置:
grant replication slave ,file on *.* to 'replication'@'172.168.1.32' identified by '123.com';
(允许172.168.1.32用replication 用户同步权限 )
进入数据库
mysql> use mysql;
>select host,user,password from user;
然后2台数据库 退出 并停止 数据库服务 service mysqld stop
2 配置数据库同步文件
(1) 主:172.168.1.31
Vi /etc/my.cnf
server-id=1
log-bin=mysql-bin
binlog-do-db=haitian 允许同步数据库
binlog-do-db=ceshi 允许同步数据库
binlog-ignore-db=mysql 不允许同步数据库
(2)从数据库:172.168.1.32
Vi /ect/my.cnf
[mysqld] 一定要添加到 下面 负责查不到数据master状态
server-id=2
log-bin=mysql-bin
replicate-do-db=test 允许同步数据库 (多个数据库同步 相应添加即可)
replicate-ignore-db=mysql 不允许同步数据库
########################################
Ubuntu 系统 需要将 my.cnf 127.0.0.1 改成 0.0.0.0 默认只监听自己
关闭防火墙:ufw disable 开启防火墙 ufw enable
#####################################
(3) 启动 主 数据库 进入 数据库
Mysql> flush tables with read lock\G (锁定数据库 暂时不同步)
> show master status\G
4)从数据库配置
在slave机中进入mysql
停止 stop slave;
mysql> CHANGE MASTER TO
-> MASTER_HOST='172.168.1.31', [master_ip]
-> MASTER_PORT=3306, [master_port]
-> MASTER_USER='replication', [replication_user_name]
-> MASTER_PASSWORD='123.com', [replication_password]
-> MASTER_LOG_FILE='mysql-bin.000005',
[在主服务器(show master status;)获取File字段,recorded_log_file_name]
-> MASTER_LOG_POS=196;
[在主服务器(show master status;)获取Position字段,recorded_log_position]
mysql>start slave; 启动从数据库
然后在主服务器的数据库启动解锁 mysql>unlock tables;
在从数据库 查看 从数据库的状态是否正常
进入主数据库
mysql>use ceshi;
mysql> create table t9 ( id int ); 创建t9表
然后 进入 从数据库
mysql>use ceshi;
mysql> show tables;
测试 OK
数据库 也可以做 主主同步 以实现 互相备份的方式。