Mysql搭建主从服务器
一,Mysql主從同步
1, 環境? ? ? ? mysql51:192.168.4.51?? ?master
? ? ? ? ? ? ? ? ? ? ? mysql52:192.168.4.52?? ?slave
? ? ? ? ? ? ? ? ? ? ? ?192.168.4.50?? ?client
2, 部署上Mysql服務。
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
主從同步(一主一從)
1,確保主和從庫數據相同,
備份主庫,
#mysqldump -uroot -p123456 -B 庫名列表 > mytest.sql
恢復到從庫,
#scp 192.168.4.51:/root/mytest.sql ./?? ?//scp遠程拷貝
把備份數據導入數據庫
#mysql -uroot -p123456 < mytest.sql
2 ,? 配置主服務器
啟用binlog,設置服務器ID,指定日志格式
#vim /etc/my.cnf
[mysqld]
log_bin=master51
server_id=51
binlog_format="mixed"?? ??? ?//指出日志存儲引擎
# systemctl restart mysqld
#ls /var/lib/mysql/master.*
授權用戶
#mysql -uroot -p123456
>grant replication slave on *.* to
repluser@"%" ?identified by "123qqq...A";
>system mysqlbinlog /var/lib/mysql/master51.000001 | grep -i grant
查看當前使用的日志
>show master status\G;?? ?//查看master日志文件狀態
3,配置從服務器slave
設置server_id,
> show slave status;
52]#vim /etc/mysql.cnf
[mysqld]
server_id=52
52]#systemctl restart mysqld
指定主庫信息
# mysql -h192.168.4.51 -urepluser -p‘123qqq...A’
> show grants;?? ??? ?//查詢當前登陸用戶的權限?
#mysql -uroot -p123456
>change master to
master_host="192.168.4.51",?? ?//主庫ip
master_user="repluser",?? ??? ?//連接用戶
master_password="123qqq...A",
master_log_file="master51.000001",?? ?//master日志文件,在主庫上看
master_log_pos=441;?? ??? ??? ?//偏移位置
>start slave;?? ??? ?//啟動slave進程?? ??? ?
>show slave status\G;?? ?//看IO和SQL線程都是yes,就成功了
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
報錯,排錯:
> show slave status\G;
Last_IO_Error:?? ??? ?//查看IO線程有報錯原因
>stop slave;
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
4,客戶端測試client
51]#mysql -uroot -p123456
> create database db1;
> create table db1.a(id int);
> grant select,insert on db1.* to yaya100@"%" identified by "123qqq...A";?? ??? ??? ?//授權客戶端訪問的賬號
52]#mysql -uroot -p123456
> show databases;?? ??? ??? ?//查主創建的庫同步過來
> select user from mysql.user where user="yaya100";
?? ??? ??? ??? ??? ?//查授權的用戶
客戶端連接主庫寫入數據
50 ~]# mysql -h192.168.4.51 -uyaya100 -p123qqq...A
> show grants;?? ??? ??? ?
> select * from db1.a;
>desc db1.a;
> insert into db1.a values(100),(200),(201);
> select * from db1.a;
從庫也能查到
52 ~]# mysql -uroot -p123456
> select * from db1.a;?? ??? ?//看到和50插入相同的數據
?
=====================================主從配置完成================================================
?
?
?
?
?
總結
以上是生活随笔為你收集整理的Mysql搭建主从服务器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 物理主机安装linux的方法
- 下一篇: Nginx调度器(反向代理),TCP/U