標籤:linux 同一系統安裝兩個mysql
MYSQL版本:MYSQL-5.5.37
作業系統:Ubuntu 12.04.5 LTS \n \l
安裝步驟:
第一個MYSQL安裝路徑/usr/local/mysql 監聽3306連接埠開機檔案/etc/init.d/mysql
第二個MYSQL安裝路徑/data/mysql 監聽3307連接埠開機檔案/etc/init.d/mysql2
1、安裝第一個MYSQL在/usr/local/mysql
Setup 1:#wget http://www.cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz#tar -zxvf cmake-2.8.12.2.tar.gz#cd cmake-2.8.12.2#./bootstrap#./configure#make && make install 系統如果是CENTOS,剛要安裝另一個組件#wget http://invisible-island.net/datafiles/release/ncurses.tar.gz#./configure#make && make installSetup 2:安裝MYSQL 5.5.37#wget http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.37.tar.gztar -zxvf mysql-5.5.37.tar.gz#cd mysql-5.5.37#cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EMBEDDED_SERVER=1 -DWITH_SSL=system #make && make install 慢長的等待過後終於完成了 #groupadd mysql#useradd -g mysql mysql#cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf #vim /etc/my.cnf #需要加入basedir,和datadir否則會出問題[mysqld]basedir =/usr/local/mysqldatadir =/usr/local/mysql/data #/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data & #chown -R mysql /usr/local/mysql/data#chgrp -R mysql /usr/local/mysql/.#cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql#chmod 755 /etc/init.d/mysql#chkconfig --level 345 mysql on#echo “/usr/local/mysql/lib/mysql” >> /etc/ld.so.conf#echo “/usr/local/lib” >>/etc/ld.so.conf#ldconfig #/etc/init.d/mysql start #/usr/local/mysql/bin/mysqladmin -u root password broadengate Empire CMS,phome.net #/etc/init.d/mysql restart#/etc/init.d/mysql stopOK終於完成~
2、安裝第二個:(基本和第一個一樣,注意路徑和許可權)
#tar -zxvf mysql-5.5.37.tar.gz#cd mysql-5.5.37#cmake -DCMAKE_INSTALL_PREFIX=/data/mysql -DMYSQL_DATADIR=/data/mysql/data -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/data/mysql/mysqld.sock -DMYSQL_TCP_PORT=3307 -DWITH_DEBUG=0 -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_EMBEDDED_SERVER=1#make && make install#cp /data/mysql/support-files/my-medium.cnf /data/mysql/my.cnf #vim /data/mysql/my.cnf #需要加入basedir,和datadir否則會出問題[mysqld]basedir =/data/mysqldatadir =/data/mysql/data #/data/mysql/scripts/mysql_install_db --user=mysql --basedir=/data/mysql --datadir=/data/mysql/data & #chown -R mysql /data/mysql/data#chgrp -R mysql /data/mysql/.#cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql2#chmod 755 /etc/init.d/mysql2
好了,下面才是重點
#vi /etc/init.d/mysql2 1)找到以下檔案進行添加basedir=/data/mysqldatadir=/data/mysql/data conf=/data/mysql/my.cnf 2)修改以下參數 把$bindir/mysqld_safe --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1&替換為: $bindir/mysqld_safe --defaults-file=/data/mysql/my.cnf --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 & 3)把下面這句注釋掉(前面加個#): parse_server_arguments `$print_defaults $extra_args mysqld server mysql_server mysql.server` 4).儲存退出並添加服務: chkconfig --add /etc/init.d/mysql2
分別啟動兩個MYSQL
# /etc/init.d/mysql start # /etc/init.d/mysql2 start
查看下進程
[email protected]:/usr/local/mysql$ ps -ef|grep mysqlroot 23328 1 0 Apr17 ? 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/ubuntu.pidmysql 23616 23328 0 Apr17 ? 00:00:54 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/data/ubuntu.err --pid-file=/usr/local/mysql/data/ubuntu.pid --socket=/tmp/mysql.sock --port=3306root 23777 1 0 Apr17 ? 00:00:00 /bin/sh mysql/bin/mysqld_safe --defaults-file=/data/my.cnf --user=mysqlmysql 24915 23777 0 Apr18 ? 00:00:38 /data/mysql/bin/mysqld --defaults-file=/data/my.cnf --basedir=/data/mysql --datadir=/data/mysql/data --plugin-dir=/data/mysql/lib/plugin --user=mysql --log-error=/data/mysql/data/ubuntu.err --pid-file=/data/mysql/data/ubuntu.pid --socket=/data/mysql/mysqld.
查看連接埠
[email protected]:/usr/local/mysql$ netstat -nalp|grep ‘3306‘(No info could be read for "-p": geteuid()=1000 but you should be root.)tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN - tcp 0 0 192.168.1.119:3306 192.168.1.150:41410 ESTABLISHED - [email protected]:/usr/local/mysql$ netstat -nalp|grep ‘3307‘(No info could be read for "-p": geteuid()=1000 but you should be root.)tcp 0 0 0.0.0.0:3307 0.0.0.0:* LISTEN
可以看出兩個MYSQL正常運行
登陸
所不同的是,我們在第二個MYSQL登陸時要加上sock可以進入,否則預設是第一個資料庫
mysql -uroot -p --socket=/data/mysql/mysql.sock
本文出自 “xiangcun168” 部落格,請務必保留此出處http://xiangcun168.blog.51cto.com/4788340/1663165
Linux 同一系統安裝兩個MySQL