亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Mysqld_multi在一臺服務器上運行多個mysql實例

系統 2009 0

一、Mysqld_multi在一臺物理服務器上運行多個mysql實例

?

Mysql具有一次安裝可以運行多個實例的功能,這個功能是通過mysqld_multi實現的。當一臺機器上需要運行多個MySQL服務器時,mysqld_multi是管理多個mysqld的服務進程,這些服務進程程序用不同的unix socket或是監聽于不同的端口,通過簡單的命令,它可以啟動,關閉和報告所管理的服務器的狀態?。( 可以用此在一臺機器上做主從復制 )。

1.準備

用mysql源程序安裝,假設在安裝時用的configura選擇項如下:

/configure --prefix=/usr/bin/mysql?? --datadir=/search/mysql1/data1 --sysconfdir=/etc

?

備注 :--prefix將MYSQL安裝到/usr/bin/mysql?,

--datadir將數據庫生成/search/mysql1/data1,

--sysconfdir是指定mysql使用到的my.cnf配置文件的搜索路徑為/etc

?

其他mysql安裝過程略。

?

2.配置

安裝完成后,就是設置配置文件,是mysql能夠運行多個實例。

一下是我們機器上的配置文件my.cnf的配置

?

[mysqld_multi]
mysqld = /usr/bin/mysqld_safe
mysqladmin = /usr/bin/mysqladmin
user = root

[mysqld1]
datadir=/search/mysql1/data1
socket=/var/lib/mysql/mysql.sock1
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
port=3306
skip-name-resolve
server_id=21
log-bin=mysql-bin
max_connections=1000
key_buffer_size=2147836348
query_cache_size=134217728
read_rnd_buffer_size=134217728
table_cache=10000
tmp_table_size=536870912
log-slow-queries=slow.log
long_query_time=1
concurrent_insert=2
thread_cache_size=300
#log=/search/mysql1/data1/mysql1.log
pid-file=/search/mysql1/data1/mysql.pid1
log-error=/search/mysql1/data1/log.1
log-slave-updates
slave-skip-errors=ALL


[mysqld2]
datadir=/search/mysql2/data2
socket=/var/lib/mysql/mysql.sock2
user=mysql
old_passwords=1
skip-name-resolve
server_id=2
log-bin=mysql-bin
max_connections=1000
key_buffer_size=2147836348
#query_cache_size=134217728
query_cache_type=0
read_rnd_buffer_size=134217728
table_cache=10000
tmp_table_size=536870912
log-slow-queries=slow.log
long_query_time=1
concurrent_insert=2
thread_cache_size=300
port=3307
#log=/search/mysql2/data2/mysql2.log
pid-file=/search/mysql2/data2/mysql.pid2
log-error=/search/mysql2/data2/log.2

?

[mysqld3]
datadir=/search/mysql3/data3
socket=/var/lib/mysql/mysql.sock3
user=mysql
old_passwords=1
port=3308
skip-name-resolve
server_id=3
log-bin=mysql-bin
max_connections=1000
key_buffer_size=2147836348
#query_cache_size=134217728
query_cache_type=0
read_rnd_buffer_size=134217728
table_cache=10000
tmp_table_size=536870912
log-slow-queries=slow.log
long_query_time=1
concurrent_insert=2
thread_cache_size=300
#log=/search/mysql3/data3/mysql3.log
pid-file=/search/mysql3/data3/mysql.pid3
log-error=/search/mysql3/data3/log.3

?

[mysqld4]
datadir=/search/mysql3/data4
socket=/var/lib/mysql/mysql.sock4
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
port=3309
skip-name-resolve
server_id=13
log-bin=mysql-bin
max_connections=1000
key_buffer_size=2147836348
#query_cache_size=134217728
query_cache_type=0
delay_key_write=ALL
read_rnd_buffer_size=134217728
table_cache=10000
tmp_table_size=536870912
log-slow-queries=slow.log
long_query_time=1
concurrent_insert=2
thread_cache_size=300
#log=/search/mysql3/data4/mysql4.log
pid-file=/search/mysql3/data4/mysql.pid4
log-error=/search/mysql3/data4/log.4

?

根據以上的配置信息,可知我們配置了mysqld1,mysqld2,mysqld3,mysqld4四個mysql實例,每個實例都指定了不同的連接端口(是3306——3309)和數據存儲路徑(datadir所指定的就是它們各自數據的存儲路徑)等等一些其他的信息。

?

最重要的配置文件my.cnf弄好了之后,現在為配置中不同mysql 服務建立各自文件夾和初始數據庫等。

[mysqld1]是一個默認的,在我們安裝mysql時已經有了,所以不用管它。接下來只要配置[mysqld2]、[mysqld3]、[mysqld3]既可以。

下面就已配置[mysqld2]為例:

只要根據配置就的路徑為它建立一個目錄就可以。將該目錄改為mysql管理權,命令如下

? mkdir /search/mysql2/data2?? #建立[mysqld2]實例的數據存儲目錄

?

建數據庫,我們可以把默認的mysql數據庫復制過來,以利用其它的mysql帳號,其它數據庫根據應用再建立。

cp -R /search/mysql1/data1/mysql? /usr/local/mysql/data2? #默認的mysql數據庫復制過來

?

chown -R mysql:mysql /usr/local/mysql/data2? #該目錄改為mysql管理權

?

[mysqld3],[mysqld4]的操作相同,在此省略。

至此我們的配置就結束了,接下來就是要啟動我們的mysql服務了。
?

?

3.啟動mysql服務

?

使用如下參數來啟動mysqld_multi: (注:該命令在mysql的bin目錄中,根據上面所提到./configure --prefix=/usr/bin/mysql ,所以該文件應該在 /usr/bin/mysql/bin,這得根據你安裝時所指定的路徑 ) 。

?

mysqld_multi [options] [GNR[,GNR]...]

?

start,stop和report是指你想到執行的操作。你可以在單獨的服務或是多服務上指定一個操作,區別于選項后面的GNR列表。如果沒有指定GNR列表,那么mysqld_multi將在所有的服務中根據選項文件進行操作。

每一個GNR的值是組的序列號或是一個組的序列號范圍。此項的值必須是組名字最后的數字,比如說如果組名為mysqld17,那么此項的值則為 17。如果指定一個范圍,使用"-"(破折號)來連接二個數字。如GNR的值為10-13,則指組mysqld10到組mysqld13。多個組或是組范圍可以在命令行中指定,使用","(逗號)隔開。不能有空白的字符(如空格或tab),在空白字符后面的參數將會被忽略。 (注:GNR值就是我們定義my.cnf中mysqld#中的值,我這里只有1-4)。

?

?mysqld_multi --config-file=/etc/my.cnf start 1?? #只啟動第一個mysql服務,相關文件由my.cnf中mysql1設定

?mysqld_multi --config-file=/etc/my.cnf stop 1?? #停止第一個mysql服務,相關文件由my.cnf中mysql1設定

?mysqld_multi?? --config-file=/etc/my.cnf start 1-4??? #啟動 第1至4mysql服務,其實就是我這里的全部。

?

注意: 直接用 service mysqld start 命令去啟動會報錯?!緜€人覺得這個命令是用來啟動只安裝了單個實例的服務器的】

?

4、客戶端訪問

任何(遠程)客戶端訪問都需要指定訪問端口。方才能進入指定數據庫服務。否則將使用到Mysql默認的端口(3306)所服務的MYSQL。

?

4.1 如果是在本地機器上連接mysql服務器

?mysql -S/var/lib/mysql/mysql.sock1?? #連接的是[mysql1]實例上

?如果使用 mysql -p3306 命令去連接[mysql1]實例,則會報錯“ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) ”【個人覺得出現這個錯誤是,默認會去找mysql.sock這個文件,而因為此物理機器上運行的是多個實例,所以這個文件不存在】

?

4.2如果是在遠程機器上去連接此mysql服務器(當然此遠程機器需要有連接的權限)

mysql -umysql -p -h10.10.2.23?? #這里假設用戶名是mysql,服務器iP是10.10.2.23,則連接的是[mysql1]實例,因為沒有指定端口。

?

?

?

Mysqld_multi在一臺服務器上運行多個mysql實例及操作


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 在线视频免费观看a毛片 | 99视频精品全部在线播放 | 毛片站 | 草久在线观看 | 精品成人免费一区二区在线播放 | 欧美日本一区 | 天天操天天透 | 精品无码久久久久久国产 | 久久99久久99精品观看 | 天天射网站 | 亚洲qingse中文在线 | 久久久国产99久久国产一 | 国产精品国产三级国产an | 久草美女| 视频一区二区三区在线观看 | 视频在线观看一区 | 欧美亚洲另类综合 | h片免费网站 | 午夜日韩| 东京99热| 毛片毛片毛片毛片出来毛片 | 日韩a无吗一区二区三区 | 九九99香蕉在线视频美国毛片 | 一本大道久久香蕉成人网 | 国产成人精品高清在线观看99 | 一级毛片在线观看免费 | 亚洲高清免费 | 国产短视频精品区第一页 | 黑人欧美一级毛片 | 久久久精 | 久久精品亚洲99一区二区 | 香蕉国产一区二区 | 97精品在线播放 | 国产做受视频激情播放 | 亚洲毛片一级带毛片基地 | 日韩久久视频 | 亚洲综合日韩中文字幕v在线 | 国产亚洲欧美ai在线看片 | 欧美国产伦久久久久 | 偷偷操不一样的久久 | 青青影院一区二区免费视频 |