程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> LINUX下mysql服務器設置(配置文件)

LINUX下mysql服務器設置(配置文件)

編輯:關於MYSQL數據庫

1.兩台編譯安裝好MySQL的服務器:

A:192.168.1.6             (MySQL的用戶名:root;密碼:gaso123;拷貝安裝源文件目錄下的support-files/my-huge.cnf文件到/etc/my.cnf)

B:192.168.1.8              (MySQL的用戶名:root;密碼:gaso123;拷貝安裝源文件目錄下的support-files/my-huge.cnf文件到/etc/my.cnf)

設置A和B互為備份MySQL(master-master)

2.A和B上分別初始化一下數據庫(mysql_install_db --user=MySQL

3.A和B上分別設置一下MySQL的root密碼(MySQLadmin -u root passWord gaso123

4.分別修改A和B的MySQL配置文件/etc/my.cnf

對於A(沒有的項就手工添加):

server-id    =   6                                                      ''用6(主機A的ip的主機號以便於記憶)設置,代表A是master且A的master id是6,該項位於[MySQLd]字段。

server-id    =   8                                                      ''用8(主機B的ip的主機號,將在主機B的my.cnf上指明,8也只是為了便於記憶),代表A同時是slave且A這個slave需要向 server-id為8(即主機B)的主機負責,該項位於replication解釋後。

master-host   = 192.168.1.8                                   ''指明A這個slave的master的ip

master-user   = root                                              ''指明A這個slave的master的用戶

master-passWord = gaso123                                       ''密碼

master-port    =   3306                                            ''端口

log-bin=MySQL-bin                                                ''用二進制日志

binlog-ignore-db=MySQL                                            ''不同步mysql庫,避免一些麻煩,因為MySQL庫是系統庫,主主模式下萬一發生同時寫入系統庫可能會產生一些意外問題。

log-bin=/usr/local/MySQL/var/updatelog                ''指定一個日志文件的存放位置,一般放在var這個數據目錄即可。

master-connect-retry=60                                    ''斷線重連時間60秒。

對於B(沒有的項就手工添加):

server-id    =    8                                                      ''用8(主機B的ip的主機號以便於記憶)設置,代表B是master且B的master id是8,該項位於[MySQLd]字段。

server-id    =    6                                                      ''用6(主機A的ip的主機號,剛上面已在主機A的my.cnf上指明過了),代表B同時是slave且B這個slave需要向 server-id為6(即主機A)的主機負責,該項位於replication解釋後。

master-host   = 192.168.1.6                                   ''指明B這個slave的master的ip

master-user   = root                                              ''指明B這個slave的master的用戶

master-passWord = gaso123                                 ''密碼

master-port    =   3306                                            ''端口

log-bin=MySQL-bin                                                     ''用二進制日志

binlog-ignore-db=MySQL                                            ''不同步mysql庫,避免一些麻煩,因為MySQL庫是系統庫,主主模式下萬一發生同時寫入系統庫可能會產生一些意外問題。

log-bin=/usr/local/MySQL/var/updatelog                ''指定一個日志文件的存放位置,一般放在var這個數據目錄即可。

master-connect-retry=60                                    ''斷線重連時間60秒。

5.分別啟動A和B的MySQL(MySQLd_safe &)

6.分別登陸進去A和B的MySQL(MySQL -u root -p,回車後會提示輸入密碼)

對於A:

MySQL>slave stop;

先停掉slave通訊(應該同時在B上也先停掉)

MySQL>grant replication slave,replication clIEnt,reload,super on *.* to 'root'@'192.168.1.8' identifIEd by 'gaso123';

授權B有操作slaveA的權限。

MySQL>flush privileges;

刷新授權使生效。

MySQL>slave start;

開啟slave通訊(應該在A和B均授權完成並刷新權限後,最後再和B一起開啟)。

對於B:

MySQL>slave stop;

停掉slave通訊(應該和A同時先進行)

MySQL>grant replication slave,replication clIEnt,reload,super on *.* to 'root'@'192.168.1.6' identifIEd by 'gaso123';

授權A有操作slaveB的權限。

MySQL>flush privileges;

刷新授權使生效。

MySQL>slave start;

開啟slave通訊(應該在A和B均授權完成並刷新權限後再開啟)。

7.查看master和slave狀態

MySQL>show master status;

+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| updatelog.000001 |      277 |              | MySQL            |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
出現類似這個表說明master生效,注意MySQL這個不同步的庫。

MySQL>show slave status\G;

Slave_IO_Running: Yes
Slave_SQL_Running: Yes
出現的表中這兩項的值均為yes則表明和slave通訊正常,若其中IO為no,則可能的原因包括但不限於:另一台機器上未做grant授權或者未flush使授權生效或者可能需要重啟一下MySQL;若其中SQL為no,則可能的原因包括但不限於:另一台機器未做slave start或者另一台機器的my.cnf配置文件配置的slave有問題。

8.若無其它意外的話可以分別在A和B上測試一下看是否真的同步

A上create database gaso;

B上drop database gaso;

均成功執行則說明配置MySQL master-master復制模式成功

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved