本篇文章給大家主要講的是關(guān)于什么是mysql基于ssl的主從復(fù)制的內(nèi)容,感興趣的話就一起來看看這篇文章吧,相信看完什么是mysql基于ssl的主從復(fù)制對大家多少有點參考價值吧。
站在用戶的角度思考問題,與客戶深入溝通,找到禹城網(wǎng)站設(shè)計與禹城網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都做網(wǎng)站、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名注冊、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務(wù)覆蓋禹城地區(qū)。當(dāng)mysql/mariadb跨越互聯(lián)網(wǎng)進(jìn)行復(fù)制時別人可以竊取到mysql/mariadb的復(fù)制信息, 這些信息是明文的, 因此存在不安全性, 這里通過ssl對復(fù)制的信息進(jìn)行加密
1. 創(chuàng)建證書中心
在主云服務(wù)器上創(chuàng)建證書中心
cd /etc/pki/CA 生成私鑰 (umask 077;openssl genrsa -out private/cakey.pem 2048) 生成自簽名證書 openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 7300 創(chuàng)建證書編號 mkdir certs crl newcerts touch index.txt echo 00 > serial
2. 為主云服務(wù)器創(chuàng)建證書
云服務(wù)器的名稱必須固定, 在申請證書時要輸入云服務(wù)器名稱, 這書和云服務(wù)器名稱對應(yīng);
創(chuàng)建私鑰 mkdir /usr/lcoal/mysql/ssl cd /usr/local/mysql/ssl (umask 077;openssl genrsa -out /etc/mysql/ssl/master.key 2048) 生成證書申請 openssl req -new -key master.key -out master.csr 在證書云服務(wù)器上對master的證書進(jìn)行簽發(fā) openssl ca -in master.csr -out master.crt -days 365
3. 創(chuàng)建從云服務(wù)器證書
(umask 077;openssl genrsa -out /etc/mysql/ssl/slave.key 2048) openssl req -new -key slave.key -out slave.csr 將從云服務(wù)器的證書申請文件復(fù)制到證書云服務(wù)器上進(jìn)行簽發(fā) openssl ca -in slave.csr -out slave.crt -days 365
4. ×××權(quán)限和mysql配置文件
將證書的公鑰cacert.pem復(fù)制到主從云服務(wù)器的目錄下 cd /etc/mysql/ssl cp /etc/pki/CA/cacert.pem ./ chown -R mysql.mysql master.crt master.key cacert.pem chmod 600 master.crt master.key cacert.pem vim /etc/my.cnf log-bin=master-log server-id=1 skip_name_resolve = ON innodb_file_per_table = ON ssl ssl_ca = /etc/mysql/ssl/cacert.pem ssl_cert = /etc/mysql/ssl/master.crt ssl_key = /etc/mysql/ssl/master.key 修改從云服務(wù)器配置 cd /etc/mysql/ssl cp /etc/pki/CA/cacert.pem ./ chown -R mysql.mysql slave.crt slave.key cacert.pem chmod 600 slave.crt slave.key cacert.pem vim /etc/my.cnf relay-log=relay-log server-id=2 skip_name_resolve = ON innodb_file_per_table = ON ssl ssl_ca = /etc/mysql/ssl/cacert.pem ssl_cert = /etc/mysql/ssl/slave.crt ssl_key = /etc/mysql/ssl/slave.key
5. 在主服務(wù)上創(chuàng)建復(fù)制用戶
MariaDB [(none)]> GTANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO 'repluser'@'10.1.52.%' IDENTIFIED BY 'replpass' REQUIRE SSL; MariaDB [(none)]> FLUSH PRIVILEGES; 查看主云服務(wù)器當(dāng)前二進(jìn)制位置 MariaDB [(none)]> SHOW MASTER STATUS; +-------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +-------------------+----------+--------------+------------------+ | master-log.000005 | 7918 | | | +-------------------+----------+--------------+------------------+ 1 row in set (0.00 sec)
6. 在從云服務(wù)器上開始復(fù)制
MariaDB [(none)]> CHANGE MASTER TO -> MASTER_HOST='10.1.52.11', -> MASTER_USER='repluser', -> MASTER_PASSWORD='replpass', -> MASTER_LOG_FILE='master-log.000001', -> MASTER_LOG_POS=495, -> MASTER_SSL=1, -> MASTER_SSL_CA='/etc/mysql/ssl/cacert.pem', -> MASTER_SSL_CERT='/etc/mysql/ssl/slave.crt', -> MASTER_SSL_KEY='/etc/mysql/ssl/slave.key'; MariaDB [(none)]> START SLAVE;
7. 查看從云服務(wù)器的狀態(tài)
MariaDB [(none)]> SHOW SLAVE STATUS\G *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 10.1.52.11 Master_User: repluser Master_Port: 3306 Connect_Retry: 60 Master_Log_File: master-log.000005 Read_Master_Log_Pos: 7918 Relay_Log_File: relay-log.000002 Relay_Log_Pos: 7940 Relay_Master_Log_File: master-log.000005 Slave_IO_Running: Yes Slave_SQL_Running: Yes Replicate_Do_DB: Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 0 Last_Error: Skip_Counter: 0 Exec_Master_Log_Pos: 7918 Relay_Log_Space: 8228 Until_Condition: None Until_Log_File: Until_Log_Pos: 0 Master_SSL_Allowed: Yes Master_SSL_CA_File: /etc/mysql/ssl/cacert.pem Master_SSL_CA_Path: Master_SSL_Cert: /etc/mysql/ssl/slave.crt Master_SSL_Cipher: Master_SSL_Key: /etc/mysql/ssl/slave.key Seconds_Behind_Master: 0 Master_SSL_Verify_Server_Cert: No Last_IO_Errno: 0 Last_IO_Error: Last_SQL_Errno: 0 Last_SQL_Error: Replicate_Ignore_Server_Ids: Master_Server_Id: 1 1 row in set (0.00 sec)
以上關(guān)于什么是mysql基于ssl的主從復(fù)制詳細(xì)內(nèi)容,對大家有幫助嗎?如果想要了解更多相關(guān),可以繼續(xù)關(guān)注我們的行業(yè)資訊板塊。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。