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

MySql8.4單節(jié)點安裝和集群安裝的實現(xiàn)

 更新時間:2026年03月24日 10:01:57   作者:一位放浪的開發(fā)者  
本文主要介紹了MySql8.4單節(jié)點安裝和集群安裝的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

近期在做自建服務(wù)器,需要用到MySql集群,做一個簡單的記錄。如果是使用單節(jié)點服務(wù)器的話,看開頭安裝就可以了。第二步開始就是重新調(diào)整集群的配置。

  • 系統(tǒng):centos7.4
  • mysql版本:8.4.0

一、MySql單節(jié)點基礎(chǔ)安裝

卸載默認(rèn)帶的mariadb數(shù)據(jù)庫
查詢mariadb
	rpm -qa | grep mariadb
強制卸載mariadb
	rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
開始安裝MySql8.4,下邊是安裝順序,因為有對應(yīng)的依賴關(guān)系所以要按照順序來
	rpm -ivh mysql-community-icu-data-files-8.4.0-1.el7.x86_64.rpm
	rpm -ivh mysql-community-common-8.4.0-1.el7.x86_64.rpm
	rpm -ivh mysql-community-client-plugins-8.4.0-1.el7.x86_64.rpm
	rpm -ivh mysql-community-libs-8.4.0-1.el7.x86_64.rpm
	rpm -ivh mysql-community-libs-compat-8.4.0-1.el7.x86_64.rpm
	rpm -ivh mysql-community-client-8.4.0-1.el7.x86_64.rpm
	rpm -ivh mysql-community-server-8.4.0-1.el7.x86_64.rpm
	rpm -ivh mysql-community-embedded-compat-8.4.0-1.el7.x86_64.rpm
查看默認(rèn)初始化的root密碼:/var/log/mysqld.log日志中的password is generated for root@localhost:這就是密碼
如果默認(rèn)密碼登錄不了想要重置密碼在看這個下邊的流程,如果不需要可以不用關(guān)注當(dāng)前節(jié)點的內(nèi)容
設(shè)置跳過驗證:
	編輯配置文件:
		vim /etc/my.cnf
		在配置文件中添加:
		    skip-grant-tables
	重啟MySql
		systemctl restart mysqld
	登錄mysql 
		mysql -uroot
	選擇mysql庫
		use mysql;
	修改密碼
		ALTER USER 'root'@'localhost' IDENTIFIED BY '修改的密碼,密碼復(fù)雜度要符合驗證插件規(guī)則';
			--如果異常
				--ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
				--上邊異常執(zhí)行一下:flush privileges;  在執(zhí)行修改密碼的操作就行了。
		flush privileges;
	修改外網(wǎng)可以訪問root用戶
		update user set host = '%' where user = 'root';
		flush privileges;
	退出操作命令行
		quit
	回退配置
		vim /etc/my.cnf
		刪除skip-grant-tables配置
	重啟MySql
		systemctl restart mysqld

安裝成功截圖

開放3306端口:

sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
sudo firewall-cmd --reload

二、MGR集群配置

2.1 基礎(chǔ)環(huán)境準(zhǔn)備

IP說明
192.168.1.161主(讀寫)
192.168.1.162備 (只讀)
192.168.1.163備(只讀)

安裝環(huán)境:Centos7.4、第一步中的MySQl基礎(chǔ)環(huán)境安裝、MySql Shell(只有主服務(wù)器安裝了)、MySql Router(只有主服務(wù)器安裝了)

2.2 MySql基礎(chǔ)服務(wù)的配置

vim /etc/my.cnf
配置下邊給出的配置

[mysql]
# 設(shè)置mysql客戶端默認(rèn)編碼
default-character-set=utf8
[mysqld]
# 數(shù)據(jù)存放目錄
datadir=/var/lib/mysql
# MySQL啟動連接位置
socket=/var/lib/mysql/mysql.sock
# 日志記錄位置
log-error=/var/log/mysqld.log
# 啟動后記錄的PID文件
pid-file=/var/run/mysqld/mysqld.pid
#開啟GTID,必須開啟
gtid_mode=on
##強制GTID的一致性
enforce-gtid-consistency=on
##binlog格式,MGR要求必須是ROW,不過就算不是MGR,也最好用row
binlog_format=row
#
log_bin=binlog
##server-id必須是唯一的
server-id = 161
##MGR使用樂觀鎖,所以官網(wǎng)建議隔離級別是RC,減少鎖粒度
transaction_isolation = READ-COMMITTED
##因為集群會在故障恢復(fù)時互相檢查binlog的數(shù)據(jù),
##所以需要記錄下集群內(nèi)其他服務(wù)器發(fā)過來已經(jīng)執(zhí)行過的binlog,按GTID來區(qū)分是否執(zhí)行過.
log-slave-updates=on
##binlog校驗規(guī)則,5.6之后的高版本是CRC32,低版本都是NONE,但是MGR要求使用NONE
binlog_checksum=NONE
#主要是用來區(qū)分整個內(nèi)網(wǎng)里邊的各個不同的GROUP,而且也是這個group內(nèi)的GTID值的UUID
loose-group_replication_group_name = 'b5a9bdff-3c79-4cb4-97a1-e38c45fad878'
##是否隨服務(wù)器啟動而自動啟動組復(fù)制,不建議直接啟動,怕故障恢復(fù)時有擾亂數(shù)據(jù)準(zhǔn)確性的特殊情況
loose-group_replication_start_on_boot = OFF
##用MGR的單主模式
loose-group_replication_single_primary_mode = on
##本地MGR的IP地址和端口,host:port,是MGR的端口,不是數(shù)據(jù)庫的端口
loose-group_replication_local_address = '192.168.1.161:33081'
##需要接受本MGR實例控制的服務(wù)器IP地址和端口,是MGR的端口,不是數(shù)據(jù)庫的端口
loose-group_replication_group_seeds = '192.168.1.161:33081,192.168.1.162:33081,192.168.1.163:33081'
##開啟引導(dǎo)模式,添加組成員,用于第一次搭建MGR或重建MGR的時候使用,只需要在集群內(nèi)的其中一臺開啟,
loose-group_replication_bootstrap_group = ON
report_host=192.168.1.161
report_port=3306

注意:除去下邊的4個配置不一樣,3臺服務(wù)器基本配置都一樣,loose-group_replication_group_name是對應(yīng)的集群內(nèi)組三臺配置成一樣的就行,獲取配置拿走不變也行

  1. loose-group_replication_local_address服務(wù)器的IP
  2. loose-group_replication_bootstrap_group主服務(wù)器為ON備服務(wù)器是OFF
  3. server_id服務(wù)器ID,自己寫一個就行,三臺服務(wù)器不一樣要
  4. report_host注冊地址一般為服務(wù)器IP

配置完成后:systemctl restart mysqld 重啟

因為我使用的是root用戶,所以需要給root用戶先分配權(quán)限

  1. 登錄MySql -uroot -p
  2. GRANT CLONE_ADMIN, CONNECTION_ADMIN, GROUP_REPLICATION_ADMIN, PERSIST_RO_VARIABLES_ADMIN, REPLICATION_APPLIER, REPLICATION_SLAVE_ADMIN, ROLE_ADMIN, SYSTEM_VARIABLES_ADMIN ON . TO ‘root’@‘%’ WITH GRANT OPTION;
  3. flush privileges;

2.3 安裝MySql-Shell配置集群

只有主服務(wù)器做當(dāng)前配置

  1. 需要依賴libyaml組件:sudo yum install libyaml -y
  2. 安裝MySqlShell組件:rpm -ivh mysql-shell-8.4.0-1.el7.x86_64.rpm
  3. 進(jìn)入MySqlShell組件:mysqlsh
  4. 進(jìn)入為js模式:\js
  5. 連接主服務(wù)器:shell.connect(‘root@192.168.1.161:3306’)
  6. 檢查服務(wù)器是否可以配置MGR集群:dba.configureInstance()
  7. 創(chuàng)建集群:var c = dba.createCluster(‘mysql-db’)
  8. 把需要加入集群的服務(wù)添加上去:c.addInstance(‘192.168.1.162:3306’) 。如果是多個替換里邊的IP就行了
  9. 查看集群狀態(tài):c.status()會列出集群里邊各個服務(wù)的說明

2.4 安裝MySqlRouter

只有主服務(wù)器做的配。
因為我是使用root用戶。所以需要添加--user=root配置,9800端口開始分配讀寫和事務(wù)權(quán)限的端口

1. 安裝MySqlRouter:rpm -ivh mysql-router-community-8.4.0-1.el7.x86_64.rpm
2. mysqlrouter --bootstrap root@192.168.1.161:3306 --conf-base-port 9800 --user=root
3. 因為我是root用戶權(quán)限,但是默認(rèn)生成的執(zhí)行文件用戶是mysqlrouter用戶和組的權(quán)限,所以需要修改,使用:vim /usr/lib/systemd/system/mysqlrouter.service
4. 替換User=root,Group=root
5. 修改配置生效systemctl daemon-reload
6. 重啟mysqlrouter讓配置生效:systemctl restart mysqlrouter
7. 查看mysqlRouter中對應(yīng)的端口是否添加了監(jiān)聽,只有對應(yīng)端口被監(jiān)聽了才算生效:netstat -tnlp

-- 查看集群中router配置
shell.connect('root@192.168.1.161:3306')
var c = dba.getCluster()
c.listRouters()

到此這篇關(guān)于MySql8.4單節(jié)點安裝和集群安裝的實現(xiàn)的文章就介紹到這了,更多相關(guān)MySql8.4單節(jié)點安裝和集群安裝內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL數(shù)據(jù)庫表約束超詳細(xì)講解

    MySQL數(shù)據(jù)庫表約束超詳細(xì)講解

    這篇文章主要給大家介紹了關(guān)于MySQL數(shù)據(jù)庫表約束的相關(guān)資料,MySQL?約束是用于保持?jǐn)?shù)據(jù)完整性和一致性的規(guī)則,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • mysql 8.0.18.zip安裝配置方法圖文教程(windows 64位)

    mysql 8.0.18.zip安裝配置方法圖文教程(windows 64位)

    這篇文章主要為大家詳細(xì)介紹了mysql 8.0.18.zip安裝配置方法圖文教程,以及卸載以前數(shù)據(jù)庫的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • MySQL數(shù)據(jù)表字段內(nèi)容的批量修改、清空、復(fù)制等更新命令

    MySQL數(shù)據(jù)表字段內(nèi)容的批量修改、清空、復(fù)制等更新命令

    MySQL數(shù)據(jù)表字段內(nèi)容的批量修改、清空、復(fù)制等更新命令,需要的朋友可以參考下。
    2011-08-08
  • mysql仿asp的數(shù)據(jù)庫操作類

    mysql仿asp的數(shù)據(jù)庫操作類

    使用說明: 該類完全按照ADO的習(xí)慣書寫的,用過ASP的人都覺得ASP連接數(shù)據(jù)庫比PHP好用(這是我的感覺), 但PHP得一個一個API地寫,挺累,該類做了完全的封裝 創(chuàng)建類的實例時可以指定一個數(shù)據(jù)庫表和選擇的數(shù)據(jù)庫,如:new MySQLDB("table","database");
    2008-04-04
  • MYSQL explain 執(zhí)行計劃

    MYSQL explain 執(zhí)行計劃

    explain顯示了mysql如何使用索引來處理select語句以及連接表。可以幫助選擇更好的索引和寫出更優(yōu)化的查詢語句。
    2009-08-08
  • 查詢優(yōu)化之EXPLAIN的使用分析

    查詢優(yōu)化之EXPLAIN的使用分析

    本篇文章是對EXPLAIN的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • 淺析CentOS6.8安裝MySQL8.0.18的教程(RPM方式)

    淺析CentOS6.8安裝MySQL8.0.18的教程(RPM方式)

    這篇文章主要介紹了CentOS6.8安裝MySQL8.0.18(RPM方式)的詳細(xì)教程,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-11-11
  • MAC下MySQL忘記初始密碼怎么辦

    MAC下MySQL忘記初始密碼怎么辦

    MySQL初始密碼忘記怎么辦,這篇文章主要介紹了MAC下MySQL忘記初始密碼的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • SQL語句中SUM與COUNT的區(qū)別深入分析

    SQL語句中SUM與COUNT的區(qū)別深入分析

    本篇文章是對SQL語句中SUM與COUNT的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • MySQL雙主配置的項目實踐

    MySQL雙主配置的項目實踐

    本文詳細(xì)介紹了配置兩臺MySQL服務(wù)器之間的主從復(fù)制,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-12-12

最新評論

昔阳县| 惠水县| 乌拉特中旗| 司法| 竹溪县| 仁寿县| 彝良县| 九台市| 巨鹿县| 天津市| 嵩明县| 岗巴县| 兴宁市| 南澳县| 广德县| 东光县| 大厂| 柳州市| 永定县| 巍山| 江门市| 紫阳县| 竹山县| 奎屯市| 宜章县| 延边| 呼玛县| 霍城县| 通化市| 阿瓦提县| 公安县| 宜宾县| 哈巴河县| 蛟河市| 焦作市| 松潘县| 页游| 通许县| 勐海县| 盱眙县| 阿巴嘎旗|