日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql配置读写分离无效_MySQL数据库的同步配置+MySql 读写分离

發布時間:2024/10/8 数据库 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql配置读写分离无效_MySQL数据库的同步配置+MySql 读写分离 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

MySQL數據庫的同步。

MySQL是開源的關系型數據庫系統。主從同步復制(Replication)是從一臺MySQL數據庫服務器(主服務器master)復制數據到另一個服務器(從服務器slave)的一個進程。

配置主服務器(master)

1、編輯數據庫配置文件my.cnf 或 my.ini (windows),一般在/etc/目錄下。

#vi /etc/my.cnf

在[mysqld]的下面加入下面代碼:

log-bin=mysql-bin

server-id=1

innodb_flush_log_at_trx_commit=1

sync_binlog=1

binlog-do-db=wordpress

binlog_ignore_db=mysql

server-id=1中的1可以任定義,只要是唯一的就行。

binlog-do-db=wordpress是表示只備份wordpress。

binlog_ignore_db=mysql表示忽略備份mysql。

不加binlog-do-db和binlog_ignore_db,那就表示備份全部數據庫。

技術資源庫http://www.qi788.com/info

2、然后重啟MySQL:

#service mysqld restart

3、登錄MySQL服務器。

#mysql -uroot -p

在主服務器新建一個用戶賦予“REPLICATION SLAVE”的權限。你不需要再賦予其它的權限。在下面的命令,把X.X.X.X替換為從服務器的IP。

mysql>CREATE USER 'user'@ 'X.X.X.X' IDENTIFIED BY 'password';

mysql>GRANT REPLICATION SLAVE ON *.* TO 'user'@'X.X.X.X' IDENTIFIED BY 'password';

4、執行以下命令鎖定數據庫以防止寫入數據。

mysql>FLUSH TABLES WITH READ LOCK;

5、退出mysql命令行,導出數據庫

#mysqldump -u root -p123456 --all-databases > /root/all.sql

6、使用scp命令傳輸數據庫文件all.sql到從服務器。

#scp /root/all.sql root@www.example.com:/root

7、再次連接數據庫進入mysql命令行查看master狀態。

mysql>SHOW MASTER STATUS;

請記下顯示的信息,配置從服務器會用到。

+——————+———-+————–+——————+

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+——————+———-+————–+——————+

| mysql-bin.000001| 253| dbispconfig | mysql |

+——————+———-+————–+——————+

1 row in set (0.00 sec)

8、解鎖數據表。

mysql>UNLOCK TABLES;

配置從服務器(slave)

登錄從服務器。

1、導入主服務器的數據庫。

#mysql -u root -p123456 < /root/all.sql

2、編輯配置文件my.cnf,在[mysqld]下面加入:

server-id=2

注:2可以自己定義,只要保證唯一的就行。

3、保存文件并重啟mysqld。

#service mysqld restart

4、登錄mysql服務器,執行以下命令。

mysql>CHANGE MASTER TO

MASTER_HOST='X.X.X.X',

MASTER_USER='user',

MASTER_PASSWORD='password',

MASTER_PORT=3306,

MASTER_LOG_FILE='mysql-bin.000001,

MASTER_LOG_POS=253,

MASTER_CONNECT_RETRY=10;

注:

MASTER_HOST:主服務器的IP。

MASTER_USER:配置主服務器時建立的用戶名

MASTER_PASSWORD:用戶密碼

MASTER_PORT:主服務器mysql端口,如果未曾修改,默認即可。

這里master_log_file和master_log_pos就是前面show master status的結果。 5、啟動slave進程。

mysql>START SLAVE;

mysql>SHOW SLAVE STATUS;? 如果能查出一條記錄 那么,配置成功

6、查看mysql的日志,一般在/var/log/目錄下,如果啟動成功,你應該會看到類似下面的日志。

091104 8:42:02 [Note] Slave I/O thread: connected to master ‘root@X.X.X.X:3306?, replication started in log ‘mysql-bin.000001? at position 98

現在主服務器和從服務器已經配置好了。另外你可能需要設置主服務器的數據庫二進制日志的過期時間,可以在配置文件中使用參數expire_logs_days來設定。

java spring事務設置,方法頭部設置

@Transactional(readOnly=true)

java? 連接 驅動 設置

jdbc.connection.driver=com.mysql.jdbc.ReplicationDriver

jdbc.connection.url=jdbc:mysql:replication://192.168.202.190,192.168.202.190/job?useUnicode=true&characterEncoding=utf-8

總結

以上是生活随笔為你收集整理的mysql配置读写分离无效_MySQL数据库的同步配置+MySql 读写分离的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。