数据库分布式部署
前言
本文对mysql 数据库分布式部署做一个简单的总结,供初学者参考,如果有任何问题,请在评论区留言。
一、准备工作
1、数据库用户创建
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
2、删除之前从服务器存在同名库(谨慎)
drop database XXXX
3、保存数据库到文件(必做)
mysqldump -uroot -p --databases db_name >/tmp/db_name.sql
同步到从服务器:
scp XXX.sql root@1.1.1.1:/tmp/
在从设备上加载:
source /tmp/db_name.sql
二、确定要备份的数据库
1、修改配置文件
vim /etc/my.cnf
binlog-do-db = test
binlog-do-db=test1, xiaobin
2、重启数据库
service mysqld restart
三、用户权限
授权:
grant replication slave on *.* to 'repl'@'192.168.10.12' identified by '123456';
撤销授权:
revoke all privileges on xxx.* from 'repl'@'192.168.10.12';
上述命令还存在usage权限,彻底删除:
drop user *****
立即生效:
flush privilieges;
查看用户权限:
show grants for 'XXX'@'IP';
四、主从设备指定
主服务器上查看同步点:
show master status;
从服务器上指定主服务器
change master to master_host='IP',master_port=3306,master_user='test',master_password='password',master_log_file='mysql-bin.000015',master_log_pos=29426721;
如果之前存在指定,想清除的话,可以使用命令:
reset slave all
五、启用实时同步功能
启动命令:
start slave;
查看从设备的状态:
show slave status \G;
查看主设备的状态:
show master status;
六、测试
select * from table_name;
INSERT INTO table_name (字段1,字段2,字段3) VALUES(520, '50', '30');
DELETE FROM table_name where id = 21;
总结
这里只做一个简单的总结,如果配置主主同步,主从位置互换即可。