原始出處
mysql
多例項執行
最近幾天研究了一下怎麼讓mysql
實現多例項執行,當然也是有需求才研究的。當然少不了要看許多網上的文章和官方手冊。
一共總結出3
種多例項啟動的方法:第一種:安裝兩個msyql
,在啟動時指明不同的port
和defaults-file
即可。第二種:使用mysqld_multi
,建立乙個配置檔案然後用mysqld_multi
讀取配置檔案來啟動多例項。第三種:使用mysql
例項管理器並建立使用者賬戶,這個方法好像比較好不過也有點複雜。這些方法都可以在官方文件中找到,就不細說了,中文的也很好找。
下面是我在採用第二種方法時的心得體會。
一、為什麼這麼做。
聽乙個搞.net
開發的人說,這麼做可以防止mysql
執行緒排程中產生的瓶頸問題。別的原因就不知道了,反正有這個需求。
二、基本只是。
每個例項應該在自己的datadir
下配置my.cnf
檔案。配置檔案的查詢順序如下:
第一搜,首先讀取/etc/my.cnf
。第二搜,$datadir/my.cnf
,在data
目錄下尋找此配置檔案,每個例項應該在自己的datadir
下配置my.cnf
檔案。第三搜,defaultfile=/path/my.cnf
通常寫在命令列上,mysqld_safe defaultfile=/tmp/my.cnf &
等執行。
第四搜,~/my.cnf
當前使用者下的配置檔案。
ps:這些都是網上抄來的。
三、安裝mysql
。無外乎原始碼和rpm
等方式嘛,就不多說了。
四、準備目錄。
這步還是比較重要的。
如果安裝的時候進行了mysql_install_db
這個操作的話,會在mysql
的datadir
下面建立msyql
、test
兩個資料夾,還有幾個log
檔案。例如:
多例項同時執行的話需要自行建立另乙個datadir
。我的環境中是/var/lib/mysql2
;把mysql1
裡面的拷貝過來或者在mysql2
目錄裡面再執行一次mysql_install_db
都行。做完後要注意目錄許可權,mysql
使用者要可寫。
五、建立配置檔案。
這個些內容如果直接寫在my.cnf
裡面好像不行,也沒再試,反正分開時成功了。
原來my.cnf
檔案中的mysqld
段全部注釋。
my_multi.cnf
檔名可以隨便起,以後在命令中寫對了就行了。
再有就是要注意pid-file
、log
和log-error
這些個檔案的存放位置要mysql
使用者可寫。另外需要注意pid
檔案要事先建立好。
六、啟動例項。
啟動前要保證path
裡面包括mysql
的bin
目錄。可以把下面的命令寫入/etc/profile
。export path=$path:/usr/local/webserver/mysql/bin
啟動命令是:#/path/mysqld_mutli –config-file=/path/my_multi.cnf start 1,2
寫入/etc/rc.local
就可以開機自動啟動兩個例項了。
七、驗證。
#netstat -alpn|grep 33
#mysql -u root -h localhost –s /tmp/mysqld1.sock
#mysql -u root -h 127.0.0.1 -p 3301
連上後可以看看datadir
是不是對的:mysql> show variables like '%datadir%';
本文出自 「shark巨菜-菜園志」 部落格,請務必保留此出處
MySQL多例項執行
mysql多例項執行 更新 2010年10月19日 最近幾天研究了一下怎麼讓mysql實現多例項執行,當然也是有需求才研究的。當然少不了要看許多網上的文章和官方手冊。一共總結出3種多例項啟動的方法 第一種 安裝兩個msyql,在啟動時指明不同的port和defaults file即可。第二種 使用m...
Windows下MySQL多例項執行
1.正常安裝windows版的mysql,例如安裝在d mysql資料夾裡 2.按照常規配置好mysql 3.複製備份安裝好的資料夾,命名為 mysql 3307 刪除 data目錄下的檔案其他資料夾,只剩 test和mysql資料夾 4.修改 d mysql 3307 下的my.ini 埠為330...
mysql多例項命令 mysql多例項安裝
1 編輯my.cnf檔案增加相關引數如下 mysqld multi user root pass 123 mysqld usr local mysql bin mysqld safe mysqladmin usr local mysql bin mysqladmin log usr local my...