最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL的讀寫(xiě)分離配置最佳實(shí)踐

 更新時(shí)間:2025年11月13日 09:51:07   作者:xrkhy  
MySQL讀寫(xiě)分離是一種常見(jiàn)的數(shù)據(jù)庫(kù)優(yōu)化策略,特別是在高并發(fā)和大數(shù)據(jù)量的場(chǎng)景下,它可以有效提高系統(tǒng)的性能和穩(wěn)定性,這篇文章主要介紹了MySQL讀寫(xiě)分離配置的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下

解壓包安裝MySQL

下載安裝包

打開(kāi)MySQL官網(wǎng)==>https://dev.mysql.com/downloads/mysql/5.5.html#downloads

這里有兩個(gè)版本:一個(gè)是最新版,一個(gè)是歷史版本。我用的是歷史版本

最新版本下載

選擇不登錄直接下載安裝包

或者點(diǎn)擊這里下載:http://www.fzitv.net/softs/683429.html

歷史版本

我這里選擇8.0.39安裝

我這里的版本是最新的mysql8.0.39

下載完成之后,將壓縮包進(jìn)行解壓

壓縮文件

將剛剛下載文件解壓

這里我建議大家把自己的mysql放到D盤(pán)根目錄下,防止后面出現(xiàn)問(wèn)題,自己找的時(shí)候也方便(我就踩過(guò)這個(gè)坑)

新建 my.ini文件和mysqldata文件夾

修改文件夾名稱

后面跟個(gè)端口號(hào)來(lái)區(qū)分是哪個(gè)端口號(hào)的MySQL

編寫(xiě)my.ini文件

[mysqld]
# 設(shè)置3306端口 可以自己設(shè)置
port=3380
# 設(shè)置mysql的安裝目錄
basedir=D:\\MySQLReadWriteSeparation\mysql-8.0.39-winx64-3380
# 設(shè)置mysql數(shù)據(jù)庫(kù)的數(shù)據(jù)的存放目錄
datadir=D:\\MySQLReadWriteSeparation\mysql-8.0.39-winx64-3380\mysqldata
# 開(kāi)啟慢日志
slow_query_log=1
long_query_time=2
# 允許最大連接數(shù)
max_connections=200
# 允許連接失敗的次數(shù)。這是為了防止有人從該主機(jī)試圖攻擊數(shù)據(jù)庫(kù)系統(tǒng)
max_connect_errors=10
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
server-id=101
# 服務(wù)端使用的字符集默認(rèn)為UTF8
character-set-server=utf8mb4
# 創(chuàng)建新表時(shí)將使用的默認(rèn)存儲(chǔ)引擎
default-storage-engine=INNODB
# 默認(rèn)使用“mysql_native_password”插件認(rèn)證
default_authentication_plugin=caching_sha2_password
[mysql]
# 設(shè)置mysql客戶端默認(rèn)字符集
default-character-set=utf8
[client]
# 設(shè)置mysql客戶端連接服務(wù)端時(shí)默認(rèn)使用的端口
port=3380
# 設(shè)置默認(rèn)字符集為UTF8MB4
default-character-set=utf8mb4

注意修改文件路徑:basedir與datadir,端口號(hào),server-id=唯一

初始化密碼

cmd打開(kāi)dos命令,以管理員身份運(yùn)行,注意一定要用管理員身份運(yùn)行否則生成的初始化密碼可能不能用。

執(zhí)行 mysqld --defaults-file=D:\MySQLReadWriteSeparation\mysql-8.0.39-winx64-3380\my.ini --initialize --console目錄改為自己的,初始化數(shù)據(jù)庫(kù)存儲(chǔ)目錄。

記住臨時(shí)生成的密碼,例如:aX!E7T/-+EQB

創(chuàng)建服務(wù)

使用命令創(chuàng)建服務(wù),mysqld install MySQL3380 --defaults-file=D:\MySQLReadWriteSeparation\mysql-8.0.39-winx64-3380\my.ini

注意修改端口號(hào)和路徑

結(jié)果如下

打開(kāi)計(jì)算機(jī)管理

看到有MySQL3380即可

如果服務(wù)安裝有問(wèn)題,刪除服務(wù)命令:
mysqld -remove 服務(wù)名

啟動(dòng)

重置密碼

使用命令進(jìn)入mysql -uroot -p -P端口號(hào) ,進(jìn)入控制臺(tái)修改密碼,這個(gè)密碼是上面初始化的密碼。

登錄后如下

輸入如下命令初始化密碼為root
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

刷新flush privileges;即可使用

注意不刷新不能用

刷新過(guò)后結(jié)果如下

到此命令行窗口直接關(guān)閉即可

navicat連接數(shù)據(jù)庫(kù)

密碼是root

端口號(hào)是3380

再來(lái)一個(gè)3381

根據(jù)上述的步驟再安裝一個(gè)3381的

注意!! !!! !!! !!! !!! !!! !!!
你的mysql3381配置文件中的server-id這個(gè)值一定要和mysql8080的值不一樣,否則你的讀寫(xiě)分離時(shí)從庫(kù)的Slave_IO_Running值為No

將自動(dòng)啟動(dòng)改為手動(dòng)啟動(dòng)

每次開(kāi)機(jī)自啟動(dòng)會(huì)導(dǎo)致開(kāi)機(jī)卡頓,所以改為手動(dòng)。

結(jié)果如下:

MYSQL實(shí)現(xiàn)讀寫(xiě)分離

運(yùn)行sql文件

新建數(shù)據(jù)庫(kù),兩個(gè)數(shù)據(jù)庫(kù)都要新建如下的數(shù)據(jù)庫(kù)

兩個(gè)數(shù)據(jù)庫(kù)都要運(yùn)行SQL文件

/*
 Navicat Premium Data Transfer

 Source Server         : MySQL3381
 Source Server Type    : MySQL
 Source Server Version : 80042
 Source Host           : localhost:3381
 Source Schema         : smbms

 Target Server Type    : MySQL
 Target Server Version : 80042
 File Encoding         : 65001

 Date: 28/10/2025 16:28:02
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for smbms_address
-- ----------------------------
DROP TABLE IF EXISTS `smbms_address`;
CREATE TABLE `smbms_address`  (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主鍵ID',
  `contact` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '聯(lián)系人姓名',
  `addressDesc` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '收貨地址明細(xì)',
  `postCode` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '郵編',
  `tel` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '聯(lián)系人電話',
  `createdBy` bigint NULL DEFAULT NULL COMMENT '創(chuàng)建者',
  `creationDate` datetime NULL DEFAULT NULL COMMENT '創(chuàng)建時(shí)間',
  `modifyBy` bigint NULL DEFAULT NULL COMMENT '修改者',
  `modifyDate` datetime NULL DEFAULT NULL COMMENT '修改時(shí)間',
  `userId` bigint NULL DEFAULT NULL COMMENT '用戶ID',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of smbms_address
-- ----------------------------
INSERT INTO `smbms_address` VALUES (1, '王麗', '北京市東城區(qū)東交民巷44號(hào)', '100010', '13678789999', 1, '2016-04-13 00:00:00', NULL, NULL, 1);
INSERT INTO `smbms_address` VALUES (2, '張紅麗', '北京市海淀區(qū)丹棱街3號(hào)', '100000', '18567672312', 1, '2016-04-13 00:00:00', NULL, NULL, 1);
INSERT INTO `smbms_address` VALUES (3, '任志強(qiáng)', '北京市東城區(qū)美術(shù)館后街23號(hào)', '100021', '13387906742', 1, '2016-04-13 00:00:00', NULL, NULL, 1);
INSERT INTO `smbms_address` VALUES (4, '曹穎', '北京市朝陽(yáng)區(qū)朝陽(yáng)門(mén)南大街14號(hào)', '100053', '13568902323', 1, '2016-04-13 00:00:00', NULL, NULL, 2);
INSERT INTO `smbms_address` VALUES (5, '李慧', '北京市西城區(qū)三里河路南三巷3號(hào)', '100032', '18032356666', 1, '2016-04-13 00:00:00', NULL, NULL, 3);
INSERT INTO `smbms_address` VALUES (6, '王國(guó)強(qiáng)', '北京市順義區(qū)高麗營(yíng)鎮(zhèn)金馬工業(yè)區(qū)18號(hào)', '100061', '13787881234', 1, '2016-04-13 00:00:00', NULL, NULL, 3);

-- ----------------------------
-- Table structure for smbms_bill
-- ----------------------------
DROP TABLE IF EXISTS `smbms_bill`;
CREATE TABLE `smbms_bill`  (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主鍵ID',
  `billCode` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '賬單編碼',
  `productName` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '商品名稱',
  `productDesc` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '商品描述',
  `productUnit` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '商品單位',
  `productCount` decimal(20, 2) NULL DEFAULT NULL COMMENT '商品數(shù)量',
  `totalPrice` decimal(20, 2) NULL DEFAULT NULL COMMENT '商品總額',
  `isPayment` int NULL DEFAULT NULL COMMENT '是否支付(1:未支付 2:已支付)',
  `createdBy` bigint NULL DEFAULT NULL COMMENT '創(chuàng)建者(userId)',
  `creationDate` datetime NULL DEFAULT NULL COMMENT '創(chuàng)建時(shí)間',
  `modifyBy` bigint NULL DEFAULT NULL COMMENT '更新者(userId)',
  `modifyDate` datetime NULL DEFAULT NULL COMMENT '更新時(shí)間',
  `providerId` bigint NULL DEFAULT NULL COMMENT '供應(yīng)商ID',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 22 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of smbms_bill
-- ----------------------------
INSERT INTO `smbms_bill` VALUES (1, 'BILL2016_001', '洗發(fā)水、護(hù)發(fā)素', '日用品-洗發(fā)、護(hù)發(fā)', '瓶', 500.00, 25000.00, 2, 1, '2014-12-14 13:02:03', NULL, NULL, 13);
INSERT INTO `smbms_bill` VALUES (2, 'BILL2016_002', '香皂、肥皂、藥皂', '日用品-皂類', '塊', 1000.00, 10000.00, 2, 1, '2016-03-23 04:20:40', NULL, NULL, 13);
INSERT INTO `smbms_bill` VALUES (3, 'BILL2016_003', '大豆油', '食品-食用油', '斤', 300.00, 5890.00, 2, 1, '2014-12-14 13:02:03', NULL, NULL, 6);
INSERT INTO `smbms_bill` VALUES (4, 'BILL2016_004', '橄欖油', '食品-進(jìn)口食用油', '斤', 200.00, 9800.00, 2, 1, '2013-10-10 03:12:13', NULL, NULL, 7);
INSERT INTO `smbms_bill` VALUES (5, 'BILL2016_005', '洗潔精', '日用品-廚房清潔', '瓶', 500.00, 7000.00, 2, 1, '2014-12-14 13:02:03', NULL, NULL, 9);
INSERT INTO `smbms_bill` VALUES (6, 'BILL2016_006', '美國(guó)大杏仁', '食品-堅(jiān)果', '袋', 300.00, 5000.00, 2, 1, '2016-04-14 06:08:09', NULL, NULL, 4);
INSERT INTO `smbms_bill` VALUES (7, 'BILL2016_007', '沐浴液、精油', '日用品-沐浴類', '瓶', 500.00, 23000.00, 1, 1, '2016-07-22 10:10:22', NULL, NULL, 14);
INSERT INTO `smbms_bill` VALUES (8, 'BILL2016_008', '不銹鋼盤(pán)碗', '日用品-廚房用具', '個(gè)', 600.00, 6000.00, 2, 1, '2016-04-14 05:12:13', NULL, NULL, 14);
INSERT INTO `smbms_bill` VALUES (9, 'BILL2016_009', '塑料杯', '日用品-杯子', '個(gè)', 350.00, 1750.00, 2, 1, '2016-02-04 11:40:20', NULL, NULL, 14);
INSERT INTO `smbms_bill` VALUES (10, 'BILL2016_010', '豆瓣醬', '食品-調(diào)料', '瓶', 200.00, 2000.00, 2, 1, '2013-10-29 05:07:03', NULL, NULL, 8);
INSERT INTO `smbms_bill` VALUES (11, 'BILL2016_011', '海之藍(lán)', '飲料-國(guó)酒', '瓶', 50.00, 10000.00, 1, 1, '2016-04-14 16:16:00', NULL, NULL, 1);
INSERT INTO `smbms_bill` VALUES (12, 'BILL2016_012', '芝華士', '飲料-洋酒', '瓶', 20.00, 6000.00, 1, 1, '2016-09-09 17:00:00', NULL, NULL, 1);
INSERT INTO `smbms_bill` VALUES (13, 'BILL2016_013', '長(zhǎng)城紅葡萄酒', '飲料-紅酒', '瓶', 60.00, 800.00, 2, 1, '2016-11-14 15:23:00', NULL, NULL, 1);
INSERT INTO `smbms_bill` VALUES (14, 'BILL2016_014', '泰國(guó)香米', '食品-大米', '斤', 400.00, 5000.00, 2, 1, '2016-10-09 15:20:00', NULL, NULL, 3);
INSERT INTO `smbms_bill` VALUES (15, 'BILL2016_015', '東北大米', '食品-大米', '斤', 600.00, 4000.00, 2, 1, '2016-11-14 14:00:00', NULL, NULL, 3);
INSERT INTO `smbms_bill` VALUES (16, 'BILL2016_016', '可口可樂(lè)', '飲料', '瓶', 2000.00, 6000.00, 2, 1, '2012-03-27 13:03:01', NULL, NULL, 2);
INSERT INTO `smbms_bill` VALUES (17, 'BILL2016_017', '脈動(dòng)', '飲料', '瓶', 1500.00, 4500.00, 2, 1, '2016-05-10 12:00:00', NULL, NULL, 2);
INSERT INTO `smbms_bill` VALUES (18, 'BILL2016_018', '哇哈哈', '飲料', '瓶', 2000.00, 4000.00, 2, 1, '2015-11-24 15:12:03', NULL, NULL, 2);
INSERT INTO `smbms_bill` VALUES (19, 'BILL2025_001', '醉大轉(zhuǎn)彎', '鴨腿', '只', 15.00, 4500.00, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO `smbms_bill` VALUES (20, 'BILL2025_001', '醉大轉(zhuǎn)彎', '鴨腿', '只', 15.00, 4500.00, NULL, NULL, NULL, NULL, NULL, NULL);
INSERT INTO `smbms_bill` VALUES (21, 'BILL2025_001', '醉大轉(zhuǎn)彎', NULL, '只', 15.00, 4500.00, NULL, NULL, NULL, NULL, NULL, NULL);

-- ----------------------------
-- Table structure for smbms_provider
-- ----------------------------
DROP TABLE IF EXISTS `smbms_provider`;
CREATE TABLE `smbms_provider`  (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主鍵ID',
  `proCode` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '供應(yīng)商編碼',
  `proName` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '供應(yīng)商名稱',
  `proDesc` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '供應(yīng)商詳細(xì)描述',
  `proContact` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '供應(yīng)商聯(lián)系人',
  `proPhone` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '聯(lián)系電話',
  `proAddress` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '地址',
  `proFax` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '傳真',
  `createdBy` bigint NULL DEFAULT NULL COMMENT '創(chuàng)建者(userId)',
  `creationDate` datetime NULL DEFAULT NULL COMMENT '創(chuàng)建時(shí)間',
  `modifyDate` datetime NULL DEFAULT NULL COMMENT '更新時(shí)間',
  `modifyBy` bigint NULL DEFAULT NULL COMMENT '更新者(userId)',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 17 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of smbms_provider
-- ----------------------------
INSERT INTO `smbms_provider` VALUES (1, 'BJ_GYS001', '北京三木堂商貿(mào)有限公司', '長(zhǎng)期合作伙伴,主營(yíng)產(chǎn)品:茅臺(tái)、五糧液、郎酒、酒鬼酒、瀘州老窖、賴茅酒、法國(guó)紅酒等', '張國(guó)強(qiáng)', '13566667777', '北京市豐臺(tái)區(qū)育芳園北路', '010-58858787', 1, '2013-03-21 16:52:07', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (2, 'HB_GYS001', '石家莊帥益食品貿(mào)易有限公司', '長(zhǎng)期合作伙伴,主營(yíng)產(chǎn)品:飲料、水飲料、植物蛋白飲料、休閑食品、果汁飲料、功能飲料等', '王軍', '13309094212', '河北省石家莊新華區(qū)', '0311-67738876', 1, '2016-04-13 04:20:40', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (3, 'GZ_GYS001', '深圳市泰香米業(yè)有限公司', '初次合作伙伴,主營(yíng)產(chǎn)品:良記金輪米,龍輪香米等', '鄭程瀚', '13402013312', '廣東省深圳市福田區(qū)深南大道6006華豐大廈', '0755-67776212', 1, '2014-03-21 16:56:07', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (4, 'GZ_GYS002', '深圳市喜來(lái)客商貿(mào)有限公司', '長(zhǎng)期合作伙伴,主營(yíng)產(chǎn)品:堅(jiān)果炒貨.果脯蜜餞.天然花茶.營(yíng)養(yǎng)豆豆.特色美食.進(jìn)口食品.海味零食.肉脯肉', '林妮', '18599897645', '廣東省深圳市福龍工業(yè)區(qū)B2棟3樓西', '0755-67772341', 1, '2013-03-22 16:52:07', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (5, 'JS_GYS001', '興化佳美調(diào)味品廠', '長(zhǎng)期合作伙伴,主營(yíng)產(chǎn)品:天然香辛料、雞精、復(fù)合調(diào)味料', '徐國(guó)洋', '13754444221', '江蘇省興化市林湖工業(yè)區(qū)', '0523-21299098', 1, '2015-11-22 16:52:07', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (6, 'BJ_GYS002', '北京納福爾食用油有限公司', '長(zhǎng)期合作伙伴,主營(yíng)產(chǎn)品:山茶油、大豆油、花生油、橄欖油等', '馬鶯', '13422235678', '北京市朝陽(yáng)區(qū)珠江帝景1號(hào)樓', '010-588634233', 1, '2012-03-21 17:52:07', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (7, 'BJ_GYS003', '北京國(guó)糧食用油有限公司', '初次合作伙伴,主營(yíng)產(chǎn)品:花生油、大豆油、小磨油等', '王馳', '13344441135', '北京大興青云店開(kāi)發(fā)區(qū)', '010-588134111', 1, '2016-04-13 00:00:00', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (8, 'ZJ_GYS001', '慈溪市廣和綠色食品廠', '長(zhǎng)期合作伙伴,主營(yíng)產(chǎn)品:豆瓣醬、黃豆醬、甜面醬,辣椒,大蒜等農(nóng)產(chǎn)品', '薛圣丹', '18099953223', '浙江省寧波市慈溪周巷小安村', '0574-34449090', 1, '2013-11-21 06:02:07', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (9, 'GX_GYS001', '優(yōu)百商貿(mào)有限公司', '長(zhǎng)期合作伙伴,主營(yíng)產(chǎn)品:日化產(chǎn)品', '李立國(guó)', '13323566543', '廣西南寧市秀廂大道42-1號(hào)', '0771-98861134', 1, '2013-03-21 19:52:07', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (10, 'JS_GYS002', '南京火頭軍信息技術(shù)有限公司', '長(zhǎng)期合作伙伴,主營(yíng)產(chǎn)品:不銹鋼廚具等', '陳女士', '13098992113', '江蘇省南京市浦口區(qū)浦口大道1號(hào)新城總部大廈A座903室', '025-86223345', 1, '2013-03-25 16:52:07', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (11, 'GZ_GYS003', '廣州市白云區(qū)美星五金制品廠', '長(zhǎng)期合作伙伴,主營(yíng)產(chǎn)品:海綿床墊、坐墊、靠墊、海綿枕頭、頭枕等', '梁天', '13562276775', '廣州市白云區(qū)鐘落潭鎮(zhèn)福龍路20號(hào)', '020-85542231', 1, '2016-12-21 06:12:17', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (12, 'BJ_GYS004', '北京隆盛日化科技', '長(zhǎng)期合作伙伴,主營(yíng)產(chǎn)品:日化環(huán)保清洗劑,家居洗滌專賣(mài)、洗滌用品網(wǎng)、墻體除霉劑、墻面霉菌清除劑等', '孫欣', '13689865678', '北京市大興區(qū)舊宮', '010-35576786', 1, '2014-11-21 12:51:11', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (13, 'SD_GYS001', '山東豪克華光聯(lián)合發(fā)展有限公司', '長(zhǎng)期合作伙伴,主營(yíng)產(chǎn)品:洗衣皂、洗衣粉、洗衣液、洗潔精、消殺類、香皂等', '吳洪轉(zhuǎn)', '13245468787', '山東濟(jì)陽(yáng)濟(jì)北工業(yè)區(qū)仁和街21號(hào)', '0531-53362445', 1, '2015-01-28 10:52:07', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (14, 'JS_GYS003', '無(wú)錫喜源坤商行', '長(zhǎng)期合作伙伴,主營(yíng)產(chǎn)品:日化品批銷', '周一清', '18567674532', '江蘇無(wú)錫盛岸西路', '0510-32274422', 1, '2016-04-23 11:11:11', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (15, 'ZJ_GYS002', '樂(lè)擺日用品廠', '長(zhǎng)期合作伙伴,主營(yíng)產(chǎn)品:各種中、高檔塑料杯,塑料樂(lè)扣水杯(密封杯)、保鮮杯(保鮮盒)、廣告杯、禮品杯', '王世杰', '13212331567', '浙江省金華市義烏市義東路', '0579-34452321', 1, '2016-08-22 10:01:30', NULL, NULL);
INSERT INTO `smbms_provider` VALUES (16, '22', '22', '22', NULL, NULL, NULL, NULL, 2, NULL, NULL, NULL);

-- ----------------------------
-- Table structure for smbms_role
-- ----------------------------
DROP TABLE IF EXISTS `smbms_role`;
CREATE TABLE `smbms_role`  (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主鍵ID',
  `roleCode` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '角色編碼',
  `roleName` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '角色名稱',
  `createdBy` bigint NULL DEFAULT NULL COMMENT '創(chuàng)建者',
  `creationDate` datetime NULL DEFAULT NULL COMMENT '創(chuàng)建時(shí)間',
  `modifyBy` bigint NULL DEFAULT NULL COMMENT '修改者',
  `modifyDate` datetime NULL DEFAULT NULL COMMENT '修改時(shí)間',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of smbms_role
-- ----------------------------
INSERT INTO `smbms_role` VALUES (1, 'SMBMS_ADMIN', '系統(tǒng)管理員', 1, '2016-04-13 00:00:00', NULL, NULL);
INSERT INTO `smbms_role` VALUES (2, 'SMBMS_MANAGER', '經(jīng)理', 1, '2016-04-13 00:00:00', NULL, NULL);
INSERT INTO `smbms_role` VALUES (3, 'SMBMS_EMPLOYEE', '普通員工', 1, '2016-04-13 00:00:00', NULL, NULL);

-- ----------------------------
-- Table structure for smbms_user
-- ----------------------------
DROP TABLE IF EXISTS `smbms_user`;
CREATE TABLE `smbms_user`  (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主鍵ID',
  `userCode` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '用戶編碼',
  `userName` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '用戶名稱',
  `userPassword` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '用戶密碼',
  `gender` int NULL DEFAULT NULL COMMENT '性別(1:女、 2:男)',
  `birthday` date NULL DEFAULT NULL COMMENT '出生日期',
  `phone` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '手機(jī)',
  `address` varchar(30) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL COMMENT '地址',
  `userRole` bigint NULL DEFAULT NULL COMMENT '用戶角色(取自角色表-角色id)',
  `createdBy` bigint NULL DEFAULT NULL COMMENT '創(chuàng)建者(userId)',
  `creationDate` datetime NULL DEFAULT NULL COMMENT '創(chuàng)建時(shí)間',
  `modifyBy` bigint NULL DEFAULT NULL COMMENT '更新者(userId)',
  `modifyDate` datetime NULL DEFAULT NULL COMMENT '更新時(shí)間',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 18 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of smbms_user
-- ----------------------------
INSERT INTO `smbms_user` VALUES (1, 'admin', '系統(tǒng)管理員', '1234567', 2, '1983-10-10', '13688889999', '北京市海淀區(qū)成府路207號(hào)', 2, 1, '2013-03-21 16:52:07', NULL, '2025-09-18 14:24:43');
INSERT INTO `smbms_user` VALUES (2, 'liming', '李明', '0000000', 2, '1983-12-10', '13688884457', '北京市東城區(qū)前門(mén)東大街9號(hào)', 2, 1, '2014-12-31 19:52:09', NULL, NULL);
INSERT INTO `smbms_user` VALUES (5, 'hanlubiao', '韓路彪', '0000000', 2, '1984-06-05', '18567542321', '北京市朝陽(yáng)區(qū)北辰中心12號(hào)', 2, 1, '2014-12-31 19:52:09', NULL, NULL);
INSERT INTO `smbms_user` VALUES (6, 'zhanghua', '張華', '0000000', 1, '1983-06-15', '13544561111', '北京市海淀區(qū)學(xué)院路61號(hào)', 3, 1, '2013-02-11 10:51:17', NULL, NULL);
INSERT INTO `smbms_user` VALUES (7, 'wangyang', '王洋', '0000000', 2, '1982-12-31', '13444561124', '北京市海淀區(qū)西二旗輝煌國(guó)際16層', 3, 1, '2014-06-11 19:09:07', NULL, NULL);
INSERT INTO `smbms_user` VALUES (8, 'zhaoyan', '趙燕', '0000000', 1, '1986-03-07', '18098764545', '北京市海淀區(qū)回龍觀小區(qū)10號(hào)樓', 3, 1, '2016-04-21 13:54:07', NULL, NULL);
INSERT INTO `smbms_user` VALUES (10, 'sunlei', '孫磊', '0000000', 2, '1981-01-04', '13387676765', '北京市朝陽(yáng)區(qū)管莊新月小區(qū)12樓', 3, 1, '2015-05-06 10:52:07', NULL, NULL);
INSERT INTO `smbms_user` VALUES (11, 'sunxing', '孫興', '0000000', 2, '1978-03-12', '13367890900', '北京市朝陽(yáng)區(qū)建國(guó)門(mén)南大街10號(hào)', 3, 1, '2016-11-09 16:51:17', NULL, NULL);
INSERT INTO `smbms_user` VALUES (12, 'zhangchen', '張晨', '0000000', 1, '1986-03-28', '18098765434', '朝陽(yáng)區(qū)管莊路口北柏林愛(ài)樂(lè)三期13號(hào)樓', 3, 1, '2016-08-09 05:52:37', 1, '2016-04-14 14:15:36');
INSERT INTO `smbms_user` VALUES (13, 'dengchao', '鄧超', '0000000', 2, '1981-11-04', '13689674534', '北京市海淀區(qū)北航家屬院10號(hào)樓', 3, 1, '2016-07-11 08:02:47', NULL, NULL);
INSERT INTO `smbms_user` VALUES (14, 'yangguo', '楊過(guò)', '0000000', 2, '1980-01-01', '13388886623', '北京市朝陽(yáng)區(qū)北苑家園茉莉園20號(hào)樓', 3, 1, '2015-02-01 03:52:07', NULL, NULL);
INSERT INTO `smbms_user` VALUES (15, 'zhaomin', '趙敏', '0000000', 1, '1987-12-04', '18099897657', '北京市昌平區(qū)天通苑3區(qū)12號(hào)樓', 2, 1, '2015-09-12 12:02:12', NULL, NULL);
INSERT INTO `smbms_user` VALUES (17, '林品如', 'drgdrg', NULL, 2, '2025-09-09', '18754569847', 'hvtyuhguy', 2, NULL, '2025-09-17 18:07:00', NULL, '2025-09-17 18:07:25');

SET FOREIGN_KEY_CHECKS = 1;

修改主庫(kù)3380數(shù)據(jù)庫(kù)

修改my.ini文件

3380為主,3381為從

修改3380中my.ini文件信息

在D盤(pán)新建mysql8.0log文件夾

添加如下代碼

# log-bin需要在D盤(pán)下創(chuàng)建文件夾mysql8.0log用于存儲(chǔ)日志文件信息
log-bin=D:\mysql8.0log\mysql-bin
# binlog-do-db 為要主從的數(shù)據(jù)庫(kù)名
binlog-do-db=smbms

上面配置放的位置如下

[mysqld]
# 設(shè)置3306端口 可以自己設(shè)置
port=3380
# 設(shè)置mysql的安裝目錄
basedir=D:\MySQLReadWriteSeparation\mysql-8.0.39-winx64-3380
# 設(shè)置mysql數(shù)據(jù)庫(kù)的數(shù)據(jù)的存放目錄
datadir=D:\MySQLReadWriteSeparation\mysql-8.0.39-winx64-3380\mysqldata
# 開(kāi)啟慢日志
slow_query_log=1
long_query_time=2
# 允許最大連接數(shù)
max_connections=200
# 允許連接失敗的次數(shù)。這是為了防止有人從該主機(jī)試圖攻擊數(shù)據(jù)庫(kù)系統(tǒng)
max_connect_errors=10
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
server-id=101
# 服務(wù)端使用的字符集默認(rèn)為UTF8
character-set-server=utf8mb4
# 創(chuàng)建新表時(shí)將使用的默認(rèn)存儲(chǔ)引擎
default-storage-engine=INNODB
# 默認(rèn)使用“mysql_native_password”插件認(rèn)證
default_authentication_plugin=caching_sha2_password

# log-bin需要在D盤(pán)下創(chuàng)建文件夾mysql8.0log用于存儲(chǔ)日志文件信息
log-bin=D:\mysql8.0log\mysql-bin
# binlog-do-db 為要主從的數(shù)據(jù)庫(kù)名
binlog-do-db=smbms
binlog_format = ROW

[mysql]
# 設(shè)置mysql客戶端默認(rèn)字符集
default-character-set=utf8
[client]
# 設(shè)置mysql客戶端連接服務(wù)端時(shí)默認(rèn)使用的端口
port=3380
# 設(shè)置默認(rèn)字符集為UTF8MB4
default-character-set=utf8mb4

重啟服務(wù)

打開(kāi)計(jì)算機(jī)管理重啟服務(wù)

在mysql8.0log文件中會(huì)有如下的文件。

查看日志信息

打開(kāi)navicat輸入show master status;

注意這個(gè)信息 從庫(kù) 要用,所以這個(gè)界面先別關(guān)閉。

修改從庫(kù)3381數(shù)據(jù)庫(kù)

修改my.ini文件

修改3381中的my.ini文件,并重啟服務(wù)

添加如下代碼

log-bin=D:\\mysql8.0log\mysql-bin
# 如果你的電腦沒(méi)有使用導(dǎo)向式安裝過(guò)MySQL使用下面注釋的這兩條語(yǔ)句
# replicate-do-db=smbms
# log-slave-updates

# 如果你的電腦使用解壓包的方式安裝MySQL使用這個(gè),我們上面就是解壓包的方式安裝的。
binlog-do-db=smbms
#從庫(kù)只讀,防止誤寫(xiě)
read_only=?ON? 

上面配置的區(qū)別
replicate-do-db+ log-slave-updates:當(dāng)您的從庫(kù)(B)自身也作為其他從庫(kù)(C)的主庫(kù)時(shí),需要使用此組合。這確保了從主庫(kù)同步到B庫(kù)的smbms數(shù)據(jù)庫(kù)的更改,能被B庫(kù)記錄下來(lái)并繼續(xù)傳遞給C庫(kù)。這種架構(gòu)稱為級(jí)聯(lián)復(fù)制。
binlog-do-db+ read_only:此組合用于標(biāo)準(zhǔn)的單向主從架構(gòu)。在主庫(kù)上通過(guò)binlog-do-db限定只同步smbms庫(kù),在從庫(kù)上設(shè)置read_only防止誤操作。需要注意的是,在主庫(kù)上使用binlog-do-db進(jìn)行過(guò)濾,所有操作和過(guò)濾的負(fù)載都集中在主庫(kù)上。

上面配置放的位置如下

[mysqld]
# 設(shè)置3306端口 可以自己設(shè)置
port=3381
# 設(shè)置mysql的安裝目錄
basedir=D:\\MySQLReadWriteSeparation\mysql-8.0.39-winx64-3381
# 設(shè)置mysql數(shù)據(jù)庫(kù)的數(shù)據(jù)的存放目錄
datadir=D:\\MySQLReadWriteSeparation\mysql-8.0.39-winx64-3381\mysqldata
# 開(kāi)啟慢日志
slow_query_log=1
long_query_time=2
# 允許最大連接數(shù)
max_connections=200
# 允許連接失敗的次數(shù)。這是為了防止有人從該主機(jī)試圖攻擊數(shù)據(jù)庫(kù)系統(tǒng)
max_connect_errors=10
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
server-id=101
# 服務(wù)端使用的字符集默認(rèn)為UTF8
character-set-server=utf8mb4
# 創(chuàng)建新表時(shí)將使用的默認(rèn)存儲(chǔ)引擎
default-storage-engine=INNODB
# 默認(rèn)使用“mysql_native_password”插件認(rèn)證
default_authentication_plugin=caching_sha2_password

# 從庫(kù)配置
log-bin=D:\\mysql8.0log\mysql-bin
replicate-do-db=smbms
log-slave-updates

[mysql]
# 設(shè)置mysql客戶端默認(rèn)字符集
default-character-set=utf8
[client]
# 設(shè)置mysql客戶端連接服務(wù)端時(shí)默認(rèn)使用的端口
port=3381
# 設(shè)置默認(rèn)字符集為UTF8MB4
default-character-set=utf8mb4

重啟服務(wù)

信息綁定

navicat打開(kāi)3381數(shù)據(jù)庫(kù),并進(jìn)行信息綁定

依次執(zhí)行下面命令,注意要一條指令一條指令的跑。

stop slave;

# 127.0.0.1為主數(shù)據(jù)庫(kù)IP 
# master_port: 主數(shù)據(jù)庫(kù)端口 
# master_user: 主數(shù)據(jù)庫(kù)用戶
# master_password: 主數(shù)據(jù)庫(kù)密碼 
# master_log_file: 主數(shù)據(jù)庫(kù) 執(zhí)行show master status;查看的 File 字段值
# master_log_pos: 主數(shù)據(jù)庫(kù) 執(zhí)行show master status;查看的 Position 字段值
change master to 
master_host='127.0.0.1',
master_port=3380,
master_user='root',
master_password='root',
master_log_file='mysql-bin.000001',
master_log_pos=157;

start slave;

show slave status; # 查看是否連接 若使用dos命令 使用show slave status\G;

執(zhí)行最后一條語(yǔ)句結(jié)果如下:只要出現(xiàn)Slave_IO_RunningSlave_SQL_Running

出現(xiàn)的問(wèn)題

注意!! !!! !!! !!! !!! !!! !!!
你的mysql3381配置文件中的server-id這個(gè)值一定要和mysql8080的值不一樣,你可以改為server-id=102。
如果server-id這個(gè)值相同那么你的讀寫(xiě)分離時(shí)從庫(kù)的Slave_IO_Running值為No

測(cè)試

修改主庫(kù)的smbms數(shù)據(jù)庫(kù)的隨便一張表的數(shù)據(jù)。

對(duì)應(yīng)的MySQL3381的smbms的數(shù)據(jù)庫(kù)表也會(huì)修改

總結(jié) 

到此這篇關(guān)于MySQL的讀寫(xiě)分離配置的文章就介紹到這了,更多相關(guān)MySQL讀寫(xiě)分離配置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

丹江口市| 杨浦区| 花莲市| 府谷县| 观塘区| 拉萨市| 清水县| 九台市| 来宾市| 栖霞市| 特克斯县| 喀喇沁旗| 漳平市| 定结县| 龙游县| 伊金霍洛旗| 三亚市| 从江县| 莱芜市| 伊宁市| 云龙县| 长治县| 元朗区| 贺兰县| 百色市| 武陟县| 湖州市| 阳泉市| 南川市| 四平市| 岳池县| 南京市| 庆城县| 资兴市| 木兰县| 平远县| 包头市| 保定市| 延寿县| 确山县| 昭苏县|