標籤:mysql多執行個體
error
http://www.phperz.com/article/14/1208/39937.html
一.準備
測試軟體 mysql-5.5.36
系統版本 CentOS release 6.5 (Final) 64bit
----------------------------------------------------------------------------------
|執行個體 |連接埠 |data位置 |設定檔 |開機檔案 |
----------------------------------------------------------------------------------
|mysql3306|3306 |/data/mysql_3306| /etc/my3306.cnf |/etc/init.d/mysql.server3306 |
----------------------------------------------------------------------------------
|mysql3307|3307 |/data/mysql_3307| /etc/my3307.cnf |/etc/init.d/mysql.server3307 |
----------------------------------------------------------------------------------
下載軟體包
一般放在 /opt/mysql裡
wget http://downloads.mysql.com/archives/get/file/mysql-5.5.36.tar.gz
tar -zxvf mysql-5.5.36.tar.gz
yum -y install cmake
yum -y install gcc gcc-c++ autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* cmake cmake-gui libaio-devel bision
(諾出現Error: Missing Dependency: kernel-headers glibc裝不上)
http://vault.centos.org/5.8/os/x86_64/CentOS/kernel-headers-2.6.18-308.el5.x86_64.rpm
下載wget http://vault.centos.org/5.7/os/x86_64/CentOS/kernel-headers-2.6.18-274.el5.x86_64.rpm
安裝rpm -ivh kernel-headers-2.6.18-274.el5.x86_64.rpm
http://blog.sina.com.cn/s/blog_8f27abe50101204l.html
建立使用者
groupadd mysql
useradd -g mysql -s /sbin/nologin -M mysql
建立安裝目錄,授權使用者
mkdir -p /data/mysql5536
chown -R mysql:mysql /data/
二.安裝
解壓安裝(設定安裝預設位置為/data/mysql5536)
cd /opt/mysql/mysql-5.5.36
cmake . -DCMAKE_INSTALL_PREFIX=/data/mysql5536 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1
make && make install
如果這裡編譯失敗,請刪除CMakeCache.txt。再安裝晚依賴在重新cmake。否則會一直提示錯誤。
三.資料庫檔案(建立執行個體)
初始化資料庫
/data/mysql5536/scripts/mysql_install_db --basedir=/data/mysql5536/ --datadir=/data/mysql_3306 --user=mysql
建立my.cnf檔案
cp my.cnf my3306.cnf
vi /data/mysql_3306/my.cnf
[client]
port = 3306 #預設3306
socket = /data/mysql_3306/mysql.sock
[mysqld]
port = 3306
socket = /data/mysql_3306/mysql.sock
datadir=/data/mysql_3306
user=mysql
wait_timeout=1814400
interactive_timeout=1814400
lower_case_table_names=1
expire-logs-days = 1
skip-name-resolve
[mysqld_safe]
log-error=/data/mysql_3306/mysqld.log
pid-file=/data/mysqld_3306/mysqld.pid
記得這裡將執行個體的路徑擁有者修改為mysql
chown -R mysql:mysql /data/mysql_3306
四.啟動資料庫
啟動該資料庫執行個體
cp /data/mysql5536/support-files/mysql.server /etc/init.d/mysql.server3306
vi /etc/init.d/mysql.server3306
將預設的conf=/etc/my.cnf
修改為 conf=/etc/my3306.cnf
開啟資料庫
/etc/init.d/mysql.server3306 start|stop|restart
#/data/mysql5536/bin/mysqld_safe --defaults-extra-file=/data/mysql_3306/my.cnf --datadir=/data/mysql_3306 --user=mysql &
關閉資料庫執行個體
五.多執行個體的安裝
使用第三步在建立另外一個執行個體 假如另外一個執行個體是監聽3307連接埠
1)初始化這個執行個體資料庫
/data/mysql5536/scripts/mysql_install_db --basedir=/data/mysql5536/ --datadir=/data/mysql_3307 --user=mysql
2)建立該執行個體的my.cnf檔案
vi /etc/my3307.cnf
[client]
port = 3307 #預設3306
socket = /data/mysql_3307/mysql.sock
[mysqld]
port = 3307
socket = /data/mysql_3307/mysql.sock
port = 3306
socket = /data/mysql_3307/mysql.sock
datadir=/data/mysql_3306
wait_timeout=1814400
interactive_timeout=1814400
lower_case_table_names=1
expire-logs-days = 1
skip-name-resolve
記得這裡將執行個體的路徑擁有者修改為mysql
chown -R mysql:mysql /data/mysql_3307
3)啟動該執行個體 同上面第四步
cp /data/mysql5536/support-files/mysql.server /etc/init.d/mysql.server3307
vi /etc/init.d/mysql.server3307
將預設的conf=/etc/my.cnf
修改為 conf=/etc/my3307.cnf
開啟資料庫
/etc/init.d/mysql.server3307 start|stop|restart
進入指定資料庫
mysql -uroot -p -S /data/mysql_3306/mysql.sock
grant all privileges on *.* to ‘admin‘@‘%‘ identified by ‘123456‘;
grant all privileges on *.* to ‘admin‘@‘locatehost‘ identified by ‘123456‘;
參考文檔
http://blog.chinaunix.net/uid-25760152-id-3472603.html
本文出自 “雲の記事本” 部落格,請務必保留此出處http://youngcloud.blog.51cto.com/2873694/1662450
mysql多執行個體,my.cnf 4G conf配置安裝配置