linux中安裝多個mysql_liunx系統下安裝多個MySql數據庫并做主從配置

在網上搜索了很多資料,都沒有看到像樣的文檔,思路不是很清晰,對第一次安裝的朋友來說較為困難,經過長時間的安裝嘗試和查詢網上零碎的知識點,終于成功的完成Linux系統下多MySql數據庫安裝和主從配置,現在分享給大家。

前提:

1、關閉Liunx系統的防火墻,如果忘了,你下面的測試連接必定會失敗,切記,切記,切記。

2、下載linux系統自帶的mysql

查找已安裝的myslq 版本:#rpm??-qa?|?grep??mysql?????#(注意大小寫,如果mysql?不行就換MySQL)

將搜索出的包名卸載:

#rpm -e? --nodeps?mysql-5?.0?.22-2?.1?.0?.1? ?#(nodeps表示強制刪除)

再次查找該包名,如果沒有結果輸出則表明已將該版本的mysql卸載了 ;

3、yum安裝lrzsz和cmake

yum -y install lrzsz;

yum -y install cmake;

首先熟悉MySql數據庫,很多人都是直接安裝原生版的MySql數據庫(就是官網上下載的數據庫安裝包),也有人用的是MySql的衍生版數據庫,如percona,我用的就是這種,下面我會分別說明原生版和衍生版MySql數據庫的安裝和主從配置。

Linux下多個原生版MySql數據庫的安裝及主從配置:

1、下載MySql數據庫http://dev.mysql.com/downloads/mysql/5.5.html#downloads

c7123e76b0d15b3eb97bedc3ac1c18af.png

下載的是64位系統,我使用的是CentOS6.6 64位系統

2、安裝第一個數據庫

-- cd /usr/local/src

-- mkdir mysql

-- cd mysql

-- rz(上傳安裝包)

-- tar -xvf MySQL-5.5.47-1.linux2.6.x86_64.rpm-bundle.tar

-- rpm -ivh MySQL-server-5.5.47-1.linux2.6.x86_64.rpm

-- rpm -ivh MySQL-client-5.5.47-1.linux2.6.x86_64.rpm

-- rpm -ivh MySQL-devel-5.5.47-1.linux2.6.x86_64.rpm

到這里就安裝結束了

3、啟動數據庫、修改數據庫密碼和登錄數據庫

-- service mysql start

-- mysqladmin -uroot password ‘root’

-- mysql -uroot -proot

4、提供遠程連接的權限

在登錄mysql的狀態下執行下面的命令

-- grant all privileges on *.* to 'root' @'%' identified by 'root';

-- flush privileges;

執行結束后使用外部的工具連接庫,我這里使用的是navicat,連接的時候會報這樣測錯誤:

b11042c2d4b9c7514e05aafbfbdd2967.png

就因為這個錯誤,讓我苦苦研究很長時間,其實解決起來很方便的。下面是解決方案:

rpm安裝原生版的mysql是沒有my.cnf文件的,在網上查各種資料都是讓我修改my.cnf配置文件,但是我始終沒有找到這個文件,后來在網上看到博友的博文這里將截圖貼上如下:

d5f094b32639c4e04e53e0ed25753023.png

主要看第二種說法,我的操作如下:

-- cd /usr/share/mysql

-- cp my-medium.cnf /etc/

-- cd /etc

-- mv my-medium.cnf my.cnf

-- vim my.cnf

配置文件中許多內容都是被我注釋了,但是不注釋也沒有太大的影響,但是主要是找到bind-address =

127.0.0.1,如果有就注釋掉,沒有就不用管了,我當時在我的配置文件中是沒有找到這句話的。接下來是在配置文件的[mysqld]這句話下一行添

加一句話skip-name-resolve,保存文件,重新啟動數據庫(命令:service mysql

restart),這個時候再遠程連接數據庫就可以連接的上了(如圖)。

b4d70c4003ec7699c7c1afb6f6521848.png

好了,到此為止第一個Mysql數據庫就安裝成功了。

5、第二個Mysql數據庫的安裝之創建目錄

-- cd /usr/local

-- mkdir mysql

-- cd mysql

-- mkdir data

-- mkdir etc

-- mkdir logs

-- mkdir var

-- chown mysql:mysql /usr/local/mysql/ -R

-- cp /etc/my.cnf /usr/local/mysql/etc/

-- vim /usr/local/mysql/etc/my.cnf

這里需要將所有的內容都注釋掉,然后添加下面的內容:

[mysqld]

skip-name-resolve

port=3307

datadir=/usr/local/mysql/data

socket=/usr/local/mysql/mysql-3307.sock

user=mysql

log_error=/usr/local/mysql/logs/db_error.log

# Disabling symbolic-links is recommended to prevent assorted securityrisks

symbolic-links=0

[mysqld_safe]

log-error=/usr/local/mysql/logs/db_error.log

pid-file=/usr/local/mysql/mysqld-3307.pid

保存配置文件,準備安裝

6、安裝第二個Mysql數據庫、啟動數據庫

上面的配置文件都配置好了,接下來就是安裝了

安裝命令:

/usr/bin/mysql_install_db

--defaults-file=/usr/local/mysql/etc/my.cnf? --basedir=/usr/

--datadir=/usr/local/mysql/data? --user=mysql

啟動數據庫

/usr/bin/mysqld_safe?--defaults-file=/usr/local/mysql/etc/my.cnf &

7、修改密碼、登錄、設置遠程訪問權限

修改密碼:

mysqladmin -h127.0.0.1 -P3307 -uroot password "root"

登錄:

mysql -uroot -h127.0.0.1 -P3307 -p

設置遠程訪問權限:

grant all privileges on *.* to 'root' @'%' identified by 'root';

flush privileges;

到此第二個數據庫就安裝結束了,這里測試連接就不演示了,和上面的一樣,這里的skip-name-resolve已經在修改配置文件的時候加上了,正常安裝啟動時不會出現問題的。

8、主從配置之配置主數據庫

-- vim /etc/my.cnf

在[mysqld]所在行下另起一行,加上下面的幾句話

log-bin=mysql3306-bin

//test表示主從之間需要同步的數據庫,如果有多個就用逗號隔開,但是需要同步的數據庫較多時建議直接不寫這句話,因為逗號隔開可能會存在一些問題,直接不寫這句配置,表示同步整個數據庫

binlog-do-db=test

server-id=101? //這里的服務id可以是任意值,但是要保證唯一

配置文件修改完畢,保存配置文件,重啟數據庫。

使用navicat數據庫工具執行命令:SHOW MASTER STATUS查看主庫的狀態如下(不同數據庫值不同,記住這兩個值):

7cba719275e2d3f64ffaf7668993c67c.png

下面就是為從庫創建用戶:

grant replication slave on *.* to 'slave01'@'127.0.0.1' identified by'123456';

flush privileges;

這里的127.0.0.1需要根據你的從數據庫所在機器的ip配置,要是覺得指定ip容易出錯,就直接使用“%”代替。

小插曲:

上面的兩句sql命令在我的navicat中無法執行,如果博友你也出現這種情況,不防直接命令行連接數據庫執行這兩句話,效果一樣。

好了,到此為止主數據庫就配置完成嘍!

9、主從配置之配置從數據庫

-- vim /usr/local/mysql/etc/my.cnf

這里配置相對主庫較為簡單,只要配置[mysqld]下中的一個server-id即可,唯一需要注意的是server-id的唯一性,保存配置文件,重新啟動數據庫(用

ps -ef | grep mysql 查詢到3307 從數據庫的進程編號,kill命令(kill

xxx)殺死3307從數據庫的進程,然后重新執行啟動數據庫命令就好,注意從數據庫啟動和主數據庫的不同)。

然后使用navicat工具執行下面的sql語句:

CHANGE MASTER TO

master_host='127.0.0.1',

master_user='slave01',

master_password='123456',

master_port=3306,

master_log_file=' mysql3306-bin.000002',

master_log_pos= 1942;

c25ef344db515b54782bc0ce6cf492cc.png

啟動從數據庫的同步:

START SLAVE;

查看從數據庫的狀態:

SHOW SLAVE STATUS;

注意看其中的兩個值:

36558744d70b532e1c1794bdc0373704.png

這兩個都為“yes”才是成功,有一個為“no”都不行。

現在就測試修改數據吧!

首先在主庫中隨便修改一條數據并保存,到從庫刷新,看是否同步,如果是同步了恭喜你成功了。

啟動從庫常見問題:

報錯信息:

代碼如下:

Last_IO_Error: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server ids; these ids must be different for replication to work (or the --replicate-same-server-id option must be used on slave but this does not always make sense; please check the manual before using it).

意思很明顯:就是兩個mysql的server-id的值不唯一或者一致了。需要修改成不一樣的才行。

如果不確定各自的值為多少時可以啟動兩個數據后分別進入到不同端口的mysql界面查看這個server-id的值:

使用如下命令查看了一下server_id

復制代碼代碼如下:

mysql> show variables like 'server_id';

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| server_id | 1 |

+---------------+-------+

1 row in set (0.00 sec)

如果一樣的就修改下,改成不一樣的就可以了,然后重新啟動主庫和從庫,把原來的slave01用戶刪了,重新設置slave01用戶以及后面的操作。

如果還有問題可參見這個博客,我也是從這里獲得幫助的:

======================================================================================

Linux下多個衍生版Mysql的安裝和主從配置:

1、下載衍生版數據庫Percona,地址:https://www.percona.com/downloads/Percona-Server-5.6/LATEST/

826701aea48904e20ea2a65268891ad1.png

2、安裝第一個數據庫

-- cd /usr/local/src

-- mkdir mysql-percona

-- cd mysql-percona

-- rz(上傳安裝包)

-- tar -xvf Percona-Server-5.5.47-37.7-r764f304-el6-x86_64-bundle.tar

-- rpm -ivh Percona-Server-shared-55-5.5.47-rel37.7.el6.x86_64.rpm

-- rpm -ivh Percona-Server-client-55-5.5.47-rel37.7.el6.x86_64.rpm

-- rpm -ivh Percona-Server-server-55-5.5.47-rel37.7.el6.x86_64.rpm

這里安裝結束后和原生版的不同,這個會自動生成一個my.cnf文件保存在/etc目錄下。

啟動服務(service mysql

start)、修改root用戶密碼、登錄、設置遠程連接權限、以及修改my.cnf配置文件內容和上面的原生版相同(注意這里是修改內容步驟一樣,這里

不再需要從其他目錄拷貝文件到/etc目錄下并改文件名,因為衍生版安裝時會自動生成一個my.cnf文件保存在/etc目錄下)。

記得重新啟動數據庫,連接測試。

3、安裝第二個衍生版Mysql數據庫很簡單,這里安裝的步驟和安裝第二個原生版Mysql是完全相同的,這里就不多說了。

4、主從配置

這里的主從配置和原生版的是完全相同的,不再贅述。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/395962.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/395962.shtml
英文地址,請注明出處:http://en.pswp.cn/news/395962.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

034_nginx報錯總結

一、nginx: [emerg] "client_header_timeout" directive is not allowed here in /opt/nginx/conf/vhost.d/newton-api.uuwatch.com.conf:24 location / { client_body_timeout 5s;client_header_timeout 3s; #配置參數報錯proxy_set_header X-Forwarded-For …

江蘇省高等學校計算機一級成績查詢,江蘇計算機一級考試成績查詢

想要了解江蘇2020年9月計算機一級考試成績查詢入口的小伙伴快來看看吧!下面由出國留學網小編為你精心準備了“江蘇2020年9月計算機一級考試成績查詢入口公布”,持續關注本站將可以持續獲取更多的考試資訊!江蘇2020年9月計算機一級考試成績查詢…

Linux中mongodb安裝和導出為json

采用官方工具導出mongo數據為json格式 文檔:https://docs.mongodb.com/manual/reference/program/mongoexport/ 可以遠程導出,只要有host:port即可。 首先需要安裝tools: 在redhat中: 文檔:https://docs.mongodb.com/manual/tutor…

《樹莓派實戰秘籍》——1.17 技巧17添加重啟按鈕

本節書摘來異步社區《樹莓派實戰秘籍》一書中的第1章,第1.17節,作者:【美】Ruth Suehle ,Tom Callaway,更多章節內容可以訪問云棲社區“異步社區”公眾號查看 1.17 技巧17添加重啟按鈕 樹莓派實戰秘籍也許你已經注意到Pi缺少了某…

dns是指網絡域名系統_域名系統(DNS)是Internet的骨干。 這就是全部的運作方式。...

dns是指網絡域名系統by Nikolas ODonnell由Nikolas ODonnell 域名系統(DNS)的工作方式以及如何使其變得更好。 (How the Domain Name System (DNS) works and how you can make it better.) The Domain Name System (DNS) is often referred to as the backbone of the intern…

07.敏捷項目管理——推測階段筆記

00.推測階段關注產品很項目——創造和理解產品結構、性能和故事功能清單以及發布計劃。 01.發布計劃會用到與產品規格、平臺結構體系、資源、風險分析、業務約束以及目標進度等信息。 02.迭代計劃和開發方法有兩個至關重要的組成部分——短期迭代時間框和功能。 03.產品經理控制…

mysql臨時關閉索引功能_MySQL優化之索引優化

$1.WHY : 找到MySQL Query執行慢的原因1.1 EXPLAIN通過Explain查看SQL Query語句的執行情況&#xff0c;從中找出導致MySQL查詢性能差的原因EXPLAIN QUERY語句【字段解釋】<1> id -- 表的讀取順序id相同時&#xff0c;按照從上至下的順序執行id不同時&#xff0c;id值越…

Maven實戰. 1.3Maven與極限編程

1.3Maven與極限編程 極限編程&#xff08;XP&#xff09;是近些年在軟件行業紅得發紫的敏捷開發方法&#xff0c;它強調擁抱變化。該軟件開發方法的創始人Kent Beck提出了XP所追求的價值、實施原則和推薦實踐。下面看一下Maven是如何適應XP的。 首先看一下Maven如何幫助XP團隊實…

python 下字符串格式時間比較

python 下有多個有關時間的模塊&#xff0c;分別是time、datetime、calendar&#xff0c;今天重點討論下time寫法。 其中time模塊&#xff0c;主要有以下方法&#xff1a; ltimetime.time() 獲取當前系統時間&#xff0c;返回float型數值時間戳&#xff08;當前時間相對于1970.…

要記住的Facepalm:我在未先測試SDK的情況下對其進行了改進。

by Rahul Chowdhury通過拉胡爾喬杜里 要記住的Facepalm&#xff1a;我在未先測試SDK的情況下對其進行了改進。 (A Facepalm to Remember: I bumped up the version of an SDK without testing it first.) It all started when Google made its App Shortcuts API available fo…

《計算機應用基礎》第三套作業,《計算機應用基礎》第三套試卷和答案.doc

《計算機應用基礎》第三套試卷和答案洼擬酚痕扁亭疵熏瘤頂籌鮮愧禾候拂咨煥挖害騁邑授琳短雨況絮姚話混頸攆陛蠶撅瑟終妝響氫渾啄濃善籮將霞多仇齊眠長逗指臟和親鬧藩蝴班搬囊嫁瀾代閨杠貼漢磁渺禮懦縣謬勤享善跑紙億憑閨倔曳妖掩返狠撰翼蝎聚捌諄累堿膨躬孺癢凸蒂偉熱吊深瀝刑…

K8S Calico

NetworkPolicy是kubernetes對pod的隔離手段&#xff0c;是宿主機上的一系列iptables規則。 Egress 表示出站流量&#xff0c;就是pod作為客戶端訪問外部服務&#xff0c;pod地址作為源地址。策略可以定義目標地址或者目的端口 Ingress 表示入站流量&#xff0c;pod地址和服務作…

前端頁面內含外顯相關知識

頁面顯示&#xff1a; 對于頁面上篩選條件有下拉框加載的&#xff0c;直接下對應顯示時加載 {text : 產品線,dataIndex : entorgid,align : center,width : 150,renderer:function(value,metaData,record ,rowIndex,colIndex,store,view){if(value ! ""){$("#en…

捷克 簽證_一位捷克開發人員構建了可在您的瀏覽器中直接運行的語音合成器

捷克 簽證Here are three links worth your time:這是三個值得您花費時間的鏈接&#xff1a; A Czech developer built this mouth synthesizer that runs right in your browser. Be sure to turn your sound on. (1 minute watch interactive app) 一位捷克開發人員構建了可…

mvc 之 配置EF+oralce

只需要在項目中加載nuGet包就可以了 操作&#xff1a;工具--nuGet包管理器--程序包管理器控制臺 在 PM>處輸入 install-package entityframework 加載sqlserver的數據庫連接 install-package oracle.manageddataaccess.entityframework 加載oracle的數據庫連接 參考地址&…

計算機組裝與維修bios設置,(完整版)計算機組裝與維修模擬試題(BIOS設置的習題).docx...

第十二章BIOS 設置的習題一、問答題、目前 BIOS 的類型主要有哪幾種&#xff1f;、設置 Quick_Power_Self_Test( 快速開機自檢 ) 為什么狀態時&#xff0c;可以加速計算機的啟動&#xff1f;、何謂 _BIOS&#xff1f;、簡述 BIOS 的基本功能。、 BIOS與 CMOS有何區別&#xff1…

從諾克斯維爾的攀巖健身房到舊金山的網絡安全公司

這是三個值得您花費時間的鏈接&#xff1a; (Here are three links worth your time:) How Sean went from working in a Knoxville rock climbing gym to working as a software engineer in a San Francisco cybersecurity startup, through 12 months of intense self-teach…

每周總結(第十一周)

轉載于:https://www.cnblogs.com/qinlihong/p/5510026.html

10個關于linux中Squid代理服務器的實用面試問答

10個關于linux中Squid代理服務器的實用面試問答 不僅是系統管理員和網絡管理員時不時會聽到“代理服務器”這個詞&#xff0c;我們也經常聽到。代理服務器已經成為一種企業常態&#xff0c;而且經常會接觸到它。它現在也出現在一些小型的學校或者大型跨國公司的自助餐廳里。Squ…

北京礦大計算機考研每年分數線,2021中國礦業大學北京考研國家線公布時間_國家線是多少分...

中國礦業大學北京考研國家線怎么看&#xff1f;中國礦業大學北京考研國家線是多少分&#xff1f;山西人事考試網整理中國礦業大學北京考研考研國家線怎么看、國家線公布時間、歷年中國礦業大學北京考研國家線&#xff0c;希望考生及時關注考研成績國家線公布信息&#xff0c;為…