MySQL5.5多實例編譯安裝——mysqld_multi

一、MySQL多實例簡介
MySQL多實例,簡單地說,就是在一臺服務器上同時開啟多個不同的服務端口(如:3306、3307),同時運行多個MySQL服務進程,這些服務進程通過不同的socket監聽來自不同的端口來提供服務;
多實例不僅節省物理主機成本,還有效提升了單臺物理主機的CPU、磁盤I/O使用效率,而且還可以在多實例之間做部署數據庫HA方案。
隨著實例數量的增加,就面臨統一管理問題,這樣我們就需要用MySQL自帶的管理程序 mysqld_multi 來進行管理...
二、MySQL啟動流程
wKioL1hLzdixcXWmAABaFHN0V18168.pngmysqld_multi #多實例管理程序
mysqld????????? #MySQL最主要的啟動方式,里面有很多參數;現在使用多實例就需要用新的mysql_safe 來啟動mysql
mysql_safe??? #實則還是調用mysqld,并且會讀取mysqld中的my.cnf配置參數來啟動mysql,mysql_safe本身也有很多參數,但是這些參數會優先于my.cnf
my.cnf????????? #mysql的配置文件
my.sock??????? #mysql創建的sock文件,開啟、停止、登陸和管理mysql都是通過這個接口文件
三、接下來基于mysql5.5.52版本,安裝方法請看MySQL5.5.52編譯安裝,利用mysqld_multi配置一個多實例
1、停止單實例mysql數據庫

1
2
[root@db01?~]#?/etc/init.d/mysqld?stop
Shutting?down?MySQL.?SUCCESS!

2、禁止開機自啟動

1
2
3
[root@db01?~]#?chkconfig?mysqld?off
[root@db01?~]#?chkconfig?--list?mysqld
mysqld??????????0:關閉??1:關閉??2:關閉??3:關閉??4:關閉??5:關閉6:關閉

3、創建多實例根目錄/data/目錄

1
[root@db01?~]#?mkdir?-p?/data/{3306,3307}/data

4、拷貝mysqld_multi程序文件

1
[root@db01?~]#?cp?/application/mysql/support-files/mysqld_multi.server?/etc/init.d/mysqld_multi.server

1)修改mysqld_multi.server路徑配置

1
2
[root@db01?~]#?sed?-i?'s#basedir=/usr/local/mysql#basedir=/application/mysql#g'?/etc/init.d/mysqld_multi.server
[root@db01?~]#?sed?-i?'s#bindir=/usr/local/mysql/bin#bindir=/application/mysql/bin#g'?/etc/init.d/mysqld_multi.server

2)添加mysqld_multi用到的/etc/mysqld_multi.cnf配置文件
#這個模板文件可以用命令mysqld_multi --example導出來

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[root@db01?~]#?vim?/etc/mysqld_multi.cnf
[mysqld_multi]
mysqld?????=?/application/mysql/bin/mysqld_safe
mysqladmin?=?/application/mysql/bin/mysqladmin
#user???????=?multi_admin
#password???=?my_password
[mysqld1]
socket?????=?/data/3306/mysql.sock
port???????=?3306
pid-file???=?/data/3306/mysql.pid
datadir????=?/data/3306/data
#language??=?/application/mysql/share/mysql/english
user???????=?mysql
[mysqld2]
socket?????=?/data/3307/mysql.sock
port???????=?3307
pid-file???=?/data/3307/mysql.pid
datadir????=?/data/3307/data
#language??=?/application/mysql/share/mysql/english
user???????=?mysql

5、配置MySQL多實例的文件權限
通過下面的命令授權mysql用戶和用戶組管理整個多實例的根目錄/data

1
[root@db01?~]#?chown?-R?mysql.mysql?/data

6、初始化MySQL多實例的數據庫文件
(1)初始化MySQL數據庫
cd /application/mysql/scripts/ <==注意和MySQL5.1的路徑不同,MySQL5.1不在MySQL bin路徑下了
3306實例
/application/mysql/scripts/mysql_install_db \
--basedir=/application/mysql \
--datadir=/data/3306/data \
--user=mysql
3307實例
/application/mysql/scripts/mysql_install_db \
--basedir=/application/mysql \
--datadir=/data/3307/data \
--user=mysql
提示:--basedir=/application/mysql為MySQL的安裝路徑,--datadir為不同的實例數據目錄
操作過程:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
[root@db01?~]#?cd?/application/mysql/scripts/?
3306實例
[root@db01?scripts]#?/application/mysql/scripts/mysql_install_db?\
>?--basedir=/application/mysql?\
>?--datadir=/data/3306/data?\
>?--user=mysql
WARNING:?The?host?'db01'?could?not?be?looked?up?with?resolveip.
This?probably?means?that?your?libc?libraries?are?not?100?%?compatible
with?this?binary?MySQL?version.?The?MySQL?daemon,?mysqld,?should?work
normally?with?the?exception?that?host?name?resolving?will?not?work.
This?means?that?you?should?use?IP?addresses?instead?of?hostnames
when?specifying?MySQL?privileges?!
Installing?MySQL?system?tables...
161117?14:14:14?[Note]?/application/mysql/bin/mysqld?(mysqld?5.5.52)?starting?as?process?46676?...
OK
Filling?help?tables...
161117?14:14:15?[Note]?/application/mysql/bin/mysqld?(mysqld?5.5.52)?starting?as?process?46683?...
OK
如果有兩個ok,就表示初始化成功
3307實例
[root@db01?scripts]#?/application/mysql/scripts/mysql_install_db?\
>?--basedir=/application/mysql?\
>?--datadir=/data/3307/data?\
>?--user=mysql
Installing?MySQL?system?tables...
161117?14:18:20?[Note]?/application/mysql/bin/mysqld?(mysqld?5.5.52)?starting?as?process?46733?...
OK
Filling?help?tables...
161117?14:18:21?[Note]?/application/mysql/bin/mysqld?(mysqld?5.5.52)?starting?as?process?46740?...
OK
如果有兩個ok,就表示初始化成功

7、啟動多實例:
1)查看數據庫狀態?

1
2
3
4
5
mysqld_multi?--defaults-extra-file=/etc/mysqld_multi.cnf?report
[root@db01?~]#?mysqld_multi?--defaults-extra-file=/etc/mysqld_multi.cnf?report
Reporting?MySQL?servers
MySQL?server?from?group:?mysqld1?is?not?running
MySQL?server?from?group:?mysqld2?is?not?running

2)啟動數據庫

1
2
3
4
5
[root@db01?~]#?mysqld_multi?--defaults-extra-file=/etc/mysqld_multi.cnf?start?1,2
[root@db01?~]#?mysqld_multi?--defaults-extra-file=/etc/mysqld_multi.cnf?report???
Reporting?MySQL?servers
MySQL?server?from?group:?mysqld1?is?running
MySQL?server?from?group:?mysqld2?is?running

3)查看端口

1
2
3
[root@db01?~]#?ss?-nlutp|grep?330
tcp????LISTEN?????0??????50?????????????????????*:3306??????????????????*:*??????users:(("mysqld",47045,10))
tcp????LISTEN?????0??????50?????????????????????*:3307??????????????????*:*??????users:(("mysqld",47041,10))

8、停止數據庫

1
2
3
4
5
[root@db01?~]#?mysqld_multi?--defaults-extra-file=/etc/mysqld_multi.cnf?stop?1,2
[root@db01?~]#?mysqld_multi?--defaults-extra-file=/etc/mysqld_multi.cnf?report
Reporting?MySQL?servers
MySQL?server?from?group:?mysqld1?is?not?running
MySQL?server?from?group:?mysqld2?is?not?running

9、登陸數據庫
1)啟動數據庫

1
[root@db01?~]#?mysqld_multi?--defaults-extra-file=/etc/mysqld_multi.cnf?start?1,2

2)登錄數據庫
方法一:指定端口和主機IP,適合遠程連接

1
mysql?-uroot?-h127.0.0.1?-P3306

方法二:指定socket登陸,適合在本機連接

1
mysql?-S?/data/3307/mysql.sock

操作演示
方法一:指定端口和主機IP,適合遠程連接

1
2
3
4
5
6
7
8
9
10
11
12
[root@db01?~]#?mysql?-uroot?-h127.0.0.1?-P3306
Welcome?to?the?MySQL?monitor.??Commands?end?with?;?or?\g.
Your?MySQL?connection?id?is?1
Server?version:?5.5.52?Source?distribution
Copyright?(c)?2000,?2016,?Oracle?and/or?its?affiliates.?All?rights?reserved.
Oracle?is?a?registered?trademark?of?Oracle?Corporation?and/or?its
affiliates.?Other?names?may?be?trademarks?of?their?respective
owners.
Type?'help;'?or?'\h'?for?help.?Type?'\c'?to?clear?the?current?input?statement.
mysql>

方法二:指定socket登陸,適合在本機連接

1
2
3
4
5
6
7
8
9
10
11
12
[root@db01?~]#?mysql?-S?/data/3307/mysql.sock
Welcome?to?the?MySQL?monitor.??Commands?end?with?;?or?\g.
Your?MySQL?connection?id?is?1
Server?version:?5.5.52?Source?distribution
Copyright?(c)?2000,?2016,?Oracle?and/or?its?affiliates.?All?rights?reserved.
Oracle?is?a?registered?trademark?of?Oracle?Corporation?and/or?its
affiliates.?Other?names?may?be?trademarks?of?their?respective
owners.
Type?'help;'?or?'\h'?for?help.?Type?'\c'?to?clear?the?current?input?statement.
mysql>

到這里MySQL多實例就配置完成啦O(∩_∩)O~~!!!



本文轉自 炫維 51CTO博客,原文鏈接:http://blog.51cto.com/xuanwei/1881521

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

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

相關文章

【前端就業課 第一階段】HTML5 零基礎到實戰(二)超鏈接

注意&#xff1a;手機&#xff08;APP&#xff09;打開&#xff0c;內容顯示更佳&#xff0c;不會的私聊博主即可 想要拿代碼或加入學習計劃&#xff08;** 博主會監督你并且教你寫文章 **&#xff09;的拉到最下面&#xff08;PC端Web打開&#xff09;加博主即可&#xff0c;目…

架構,框架,模式,模塊、組件、插件的含義和區別

架構、框架、模式、模塊、組件、插件、控件、中間件的含義和區別。經常看到這些概念&#xff0c;但是有些含糊&#xff0c;花點兒功夫整理一下&#xff0c;結果還是有些地方理解的不透徹&#xff0c;先將整理的內容寫下來&#xff0c;以供交流。左側英文欄中有些單詞被分成了兩…

C語言,C#語言求100-999內的水仙花數源程序

水仙花數&#xff08;Narcissistic number&#xff09;也被稱為超完全數字不變數&#xff08;pluperfect digital invariant, PPDI&#xff09;、自戀數、自冪數、阿姆斯壯數或阿姆斯特朗數&#xff08;Armstrong number&#xff09;&#xff0c;水仙花數是指一個 3 位數&#…

一個精簡的C#表達式執行框架Dynamic Expresso

一、簡介Dynamic Expresso是一個用.NET Standard 2.0編寫的簡單c#語句的解釋器。Dynamic Expresso嵌入了自己的解析邏輯&#xff0c;通過將其轉換為.NET lambda表達式或委托來解釋c#語句。使用Dynamic Expresso開發人員可以創建可編寫腳本的應用程序&#xff0c;無需編譯即可執…

算法馬拉松13 A-E解題報告

A題意&#xff08;取余最長路&#xff09;: 佳佳有一個n*m的帶權矩陣&#xff0c;她想從(1,1)出發走到(n,m)且只能往右往下移動&#xff0c;她能得到的娛樂值為所經過的位置的權的總和。 有一天&#xff0c;她被下了惡毒的詛咒&#xff0c;這個詛咒的作用是將她的娛樂值變為對p…

Modis數據處理工具:MRT百度網盤下載和手把手圖文安裝教程

如下圖所示為 MODIS Reprojection Tool(MRT)的軟界面,看似簡單,卻是Modis遙感影像必不可少的處理工具,如投影變換等。本文以圖文并茂的形式,詳細講解MRT軟件在Windows10平臺上的安裝過程,并附MRT軟件百度網盤下載地址。 Modis Tool主界面: 一、安裝過程 1、安裝Jav…

Word中如何設置圖片與段落的間距為半行

第一種&#xff1a; 正文為5號&#xff0c;那么圖片或者Viso對象前后空一行&#xff0c;設置字號為7號或者更小&#xff0c;這樣設置的間距就是那個7號字的間距&#xff0c;比5號小&#xff0c;看著空白不是那么大。 第二種&#xff1a; Visio對象轉為jpg&#xff0c;然后選中圖…

在微信小程序中使用“隨機鍵盤”

最近研究微信小程序&#xff0c;發現在手機上使用系統鍵盤非常不方便&#xff0c;一是按鍵太小&#xff0c;對于小學生來說&#xff0c;操作非常不方便&#xff1b;二是系統鍵盤反復切換影響界面布局。于是自己決定自己寫一個隨機的小鍵盤。 原理非常簡單&#xff1a;拿“口算練…

Android之提示訂閱配置訂閱需要傳新的包 添加結算權限。

1 問題 apk上google應用市場&#xff0c;然后開通支付商品&#xff0c;錯誤提示如下 2 解決辦法 AndroidManifest.xml里面添加谷歌支付權限 <!-- google pay --><uses-permission android:name"com.android.vending.BILLING" />

【前端就業課 第一階段】HTML5 零基礎到實戰(三)一篇文CSS基礎入門

注意&#xff1a;手機&#xff08;APP&#xff09;打開&#xff0c;內容顯示更佳&#xff0c;不會的私聊博主即可 想要拿代碼或加入學習計劃&#xff08;** 博主會監督你并且教你寫文章 **&#xff09;的拉到最下面&#xff08;PC端Web打開&#xff09;加博主即可&#xff0c;目…

C#如何獲取實體類屬性名和值?

數據模型定義public class User{public User(){student new student();}public string name { get; set; }public string gender { get; set; }public int age { get; set; }public student student { get; set; }}public class student{public int ID { get; set; }public st…

將VNC 安裝在Centos 7步驟

&#xff08; Virtual Network Computing&#xff09;VNC允許Linux系統可以類似實現像Windows中的遠程桌面訪問那樣訪問Linux桌面。本文配置機器是興寧市網絡信息中心的一臺Centos 7 HP服務器環境下運行。 首先試試服務器裝了VNC沒 [rootwic ~]# rpm -q tigervnc tigervnc-serv…

利用MRT進行Modis NDVI數據(MOD13Q1)投影變換格式轉換操作圖文教程

本實例以Modis NDVI(MOD13Q1,空間分辨率為250m)一景影像數據為例,演示利用MRT進行Modis NDVI影像變換,主要內容包括:將.hdf格式轉為.tif格式,將坐標系轉為Albers等積投影。 ArcGIS完美轉換方法: 《ArcGIS10.8完美實現MODIS NDVI數據格式轉換和投影變換》 《重磅!ArcGI…

ActiveMQ無法啟動

解決辦法&#xff1a;activemq無法啟動&#xff0c;端口被占用 用netstat -an無法查出61616被哪個進程占用&#xff08;實踐證明&#xff0c;netstat -ano|findstr 61616什么也沒有找到&#xff09; 經過排查和網上資料參考&#xff0c;被windows的Internet connection share(I…

Android之升級OkHttp編譯提示錯誤如下Using ‘body(): ResponseBody?’ is an error. moved to val

1 問題 升級okHttp庫&#xff0c;編譯項目錯誤如下 Using ‘body(): ResponseBody?’ is an error. moved to val 2 解決辦法 原來的代碼 val list response.body().string() 去掉&#xff08;&#xff09;就可以了 val list response.body.string()

單例

當實際上Singleton是一個對象&#xff0c;我們不能保證使用者不會使用其他的方法去創建&#xff08;比如alloc&#xff09;,這個時候他就會創建多個實例&#xff0c;這樣就會出現這些無法感知的bug&#xff09; implementation Singleton static Singleton * sharedSingleton …

Google 開源的 Android 排版庫:FlexboxLayout

最近Google開源了一個項目叫「FlexboxLayout」。1.什么是 Flexbox簡單來說 Flexbox 是屬于web前端領域CSS的一種布局方案&#xff0c;是2009年W3C提出了一種新的布局方案&#xff0c;可以簡便、完整、響應式地實現各種頁面布局&#xff0c;并且 React Native 也是使用的 Flex 布…

Docker Network 配置,自定義bridge網絡

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182Docker Network 配置&#xff0c;自定義bridge網絡 1.停止服務 service docker stop 2.關掉docker0 ifconfi…

再見 KataCoda——O'Reilly 宣布其將在六月份關閉

近日聽聞 OReilly 將永久關閉在線學習網站 KataCoda&#xff0c;對于廣大程序員和學習者來說&#xff0c;這無疑是一件痛心疾首的事情&#xff0c;以后我們再也看不到那只會變成的功夫貓了。KataCoda 簡介KataCoda 成立于 2016 年&#xff0c;它是一個在線學習平臺&#xff0c;…

中國區域Modis行列號(附Shapefile文件下載)

重磅&#xff1a;Landsat中國西北地區行列號Shapefile圖層對照&#xff08;附行列號Shapefile下載&#xff09; 全球&#xff1a; 中國&#xff1a;