Mysql5.7主主互備安裝配置
一、安裝說明
=======================================================================================
環境: 10.1.4.57 Centos7.1
10.1.4.58 Centos7.1
說明:需要root權限,遇到的問題都有說明
- 下載地址:
https://dev.mysql.com/downloads/mysql/(mysql-5.7.17-1.el7.x86_64.rpm-bundle.tar)
2. 壓縮
tar xvf mysql-5.7.17-1.el7.x86_64.rpm-bundle.tar
3.安裝
a) rpm –ivh mysql-community-libs-5.7.17-1.el7.x86_64.rpm
b) rpm –ivh mysql-community-common-5.7.17-1.el7.x86_64.rpm
c) rpm –ivh mysql-community-client-5.7.17-1.el7.x86_64.rpm
d) rpm –ivh mysql-community-server-5.7.17-1.el7.x86_64.rpm
註意: 1.安裝步驟不能亂,先安裝依賴
2.如果安裝遇到軟件矛盾,先把其他軟件卸載(yum –e remove ***)
4. 啟動
service mysqld start
5. 查找初始密碼
vi /var/log/mysqld.log,[email protected] 後面就是密碼
6. 修改密碼(不修改密碼控制臺輸入命令會一直報錯)
alter user [email protected] identified by ‘newpassword‘;
新版mysql改密碼會報錯,因為有驗證密碼的插件,改密碼前需要先修改配置
set global validate_password_policy=0;
set global validate_password_length=4;
第一個是把驗證規則去掉,第二條修改密碼長度,如果不輸第二條命令,默認長度為8以上
7. 重啟
service mysqld restart
8. 開始配置互備,修改配置文件,主要是設置id,其他是為了可能性的出錯
vi /etc/my.cnf
[mysqld]
server-id = 1 #backup這臺設置2
log-bin = mysql-bin
binlog-ignore-db = mysql,information_schema #忽略寫入binlog日誌的庫
auto-increment-increment = 2 #字段變化增量值
auto-increment-offset = 1 #初始字段ID為1
slave-skip-errors = all #忽略所有復制產生的錯誤
9. 重啟然後登錄
service mysqld restart
mysql –u root –p newpassword
10. 查看狀態
show master status;
11. 新建用戶復制
mysql> GRANT REPLICATION SLAVE ON *.* TO [email protected]%‘ IDENTIFIED BY ‘replication‘;
mysql> flush privileges;
mysql> change master to
-> master_host=‘10.1.4.58‘, #對方ip
-> master_user=‘replication‘,
-> master_password=‘replication‘,
-> master_log_file=‘mysql-bin.000001‘, #對方日誌
-> master_log_pos=1334; #對端狀態顯示的值
mysql> start slave; #啟動同步
12. 查看狀態
show slave status\G;
圖中顯示為yes則啟動成功.如果顯示正在連接則等一會兒再查
-
結束啦,連接數據庫驗證就好了
二、一些問題
=======================================================================================
a. 登錄root後新建用戶(這裏設置密碼同樣需要註意,權限可以不賦全部)
grant all privileges on *.* to [email protected]%’ identified by ‘123‘;
b. 查看
show databases;
use mysql;
select Host,user from user;
可以看到用戶和訪問的機器,’%’代表所有,正常新建用戶後需要更改這個值才可以在其他機器上訪問
update user set Host = ‘%’ where user = ‘dc’;
c. 如果Firewall沒有開放端口
Firewall-cmd –add-port=3306/tcp
結果succeed就正確了.
Mysql5.7主主互備安裝配置