mysql主從複製--傻瓜式操作

使用mysql主從複製的好處有:

1、採用主從服務器這種架構,穩定性得以提升。如果主服務器發生故障,我們可以使用從服務器來提供服務。

2、在主從服務器上分開處理用戶的請求,可以提升數據處理效率。

3、將主服務器上的數據複製到從服務器上,保護數據免受意外的損失。

環境描述:

新企業要搭建架構爲主從複製的mysql數據庫。

主服務器(mysql-master):IP地址:172.17.0.142

從服務器(mysql-slave)  :IP地址:172.17.0.45

主從服務器均可正常提供服務。

在主服務器Master上操作:
1.[root@142 ~]# vim /etc/my.cnf
log-bin=mysql-bin //
必須啓用二進制日誌
server-id=1 //服務器id
將log-slave-updates註釋掉

2.[root@142 ~]# mysql -uroot -paixocm
root@(none) 03:04>grant replication slave on *.* to 'slave'@'172.17.0.45' identified by 'aixocm'; //---
建立一個內部複製通信用戶
3.root@(none) 03:04>show master status;
+----------------------------+------------------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+----------------------------+------------------+--------------+------------------+
|
mysql-bin.000006 | 342 | | |
+--------------- ------------+----------+--------------+------------------+
1 row in set (0.00 sec)

在從服務器Slave上操作
1.[root@45 ~]# vim /etc/my.cnf
log-bin=mysql-bin
server-id=2
將log-slave-updates打開

2.root@(none) 00:17>stop slave;
Query OK, 0 rows affected (0.00 sec)
3.root@(none) 00:17>change master to master_host='172.17.0.142', master_user='slave', master_password='aixocm',
master_log_file='mysql-bin.000006', master_log_pos=342;
Query OK, 0 rows affected (0.04 sec)
4.root@(none) 00:18>start slave;
Query OK, 0 rows affected (0.00 sec)
5.root@(none) 00:19>show slave status\G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 172.17.0.142
Master_User: slave
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000006
Read_Master_Log_Pos: 342
Relay_Log_File: localhost-relay-bin.000002
Relay_Log_Pos: 251
Relay_Master_Log_File: mysql-bin.000006
Slave_IO_Running: Yes -------一定要是yes
Slave_SQL_Running: Yes -------一定要是yes


測試:
1.master上面操作新建數據庫新建表
root@(none) 03:11>create database sx;
Query OK, 1 row affected (0.02 sec)
root@(none) 03:11>use sx;
Database changed
root@sx 03:12>create table sx(
-> name int);
Query OK, 0 rows affected (0.03 sec)
2.slave上面檢查是否同步
root@(none) 00:21>show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
|
sx |
| test |
|
+--------------------+
6 rows in set (0.00 sec)
root@(none) 00:22>use sx;
Database changed
root@sx 00:23>show tables;
+--------------+
| Tables_in_sx |
+--------------+
| sx |
+--------------+
1 row in set (0.00 sec)
顯示效果如上-----恭喜你實驗成功

溫馨提示:
1.防火牆
2.selinux
3.網絡通不通
4.pos不對
5.配置打錯
6.更改配置或其他操作以後:slave stop然後再slave start

發佈了55 篇原創文章 · 獲贊 5 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章