新聞中心
一:準備環(huán)境:
安裝MySQL的依賴包并檢查是否安裝完成
(2)創(chuàng)建啟動MySQL的用戶
useradd -s /sbin/nologin -M mysql(3)規(guī)范軟件包安裝路徑,并下載解壓mysql-5.5.32源碼包
mkdir /home/oldboy/toolscd /home/oldboy/toolswget ftp://10.0.0.1/mysql-5.5.32.tar.gztar xf mysql-5.5.32.tar.gz cd mysql-5.5.32二:編譯安裝MySQL源碼包
(1)使用cmake命令對MySQL的源碼包進行編譯安裝
cmake -DCMAKE_INSTALL_PREFIX=/application/mysql-5.5.32 \-DMYSQL_DATADIR=/application/mysql-5.5.32/data \-DMYSQL_UNIX_ADDR=/application/mysql-5.5.32/tmp/mysql.sock \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \-DENABLED_LOOCAL_INFILE=ON \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_FEDERATED_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \-DWITHOUT_PARRTITION_STORAGE_ENGINE=1 \-DWITH_FAST_MUTEXES=1 \-DWITH_ZLIB=bundled \-DENABLED_LOCAL_INFILE=1 \-DWITH_READLINE=1 \-DWITH_EMBEDDED_SERVER=1\-DWITH_DEBUG=0echo $?(2)生成Makefile文件的步驟接下來進行安裝
make && make installecho $?(3)到了此步我們的MySQL數(shù)據(jù)庫就安裝完成了
三:配置MySQL數(shù)據(jù)庫
(1)為MySQL安裝目錄創(chuàng)建軟鏈接
ln -s /application/mysql-5.5.32 /application/mysqlll /application/(2)創(chuàng)建MySQL的多實例目錄
mkdir -p /data/{3306,3307}/data(3)下載MySQL多實例的/data
cd /home/oldboy/tools/wget ftp://10.0.0.1/data.zipunzip data.zipcp -r data /tree /data/(4)設置多實例MySQL啟動腳本,允許執(zhí)行
find /data -type f -name "mysql"|xargs chmod +xfind /data -type f -name "mysql"|xargs ls -l(5)對MySQL數(shù)據(jù)庫的數(shù)據(jù)目錄進行授權管理
chown -R mysql.mysql /data/ll /data/(6)對MySQL數(shù)據(jù)庫進行初始化操作
cd /application/mysql/scripts/./mysql_install_db --basedir=/application/mysql/ --datadir=/data/3306/data/ --user=mysql./mysql_install_db --basedir=/application/mysql/ --datadir=/data/3307/data/ --user=mysql四:MySQL多實例配置及啟動
(1)啟動第一個MySQL實例
/data/3306/mysql start(2)啟動第二個MySQL實例
/data/3307/mysql start(3)啟動完成進行檢查
netstat -lntup|grep 330(4)將MySQL命令復制到指定的sock目錄
cp /application/mysql/bin/* /usr/local/sbin/(5)使用mysql命令登錄數(shù)據(jù)庫,登錄的時候需要指定sock
mysql -uroot -S /data/3306/mysql.sockmysql -uroot -S /data/3307/mysql.sock(6)設置MySQL多實例的數(shù)據(jù)庫開機自啟動
echo "#mysql multi instances" >>/etc/rc.localecho "/data/3306/mysql start" >>/etc/rc.localecho "/data/3307/mysql start" >>/etc/rc.localtail -n 3 /etc/rc.local常見錯誤問題排除:
(1)是否對主機名做解析
(2)tmp目錄的權限是否為1777
(3)如果啟動MySQL多實例沒有查到端口就稍等一會
(4)通過日志.err結尾的日志進行排錯
五:MySQL添加多實例的方法
(1)創(chuàng)建一個多實例的存放目錄
mkdir /data/3308/data -p(2)復制一份實例到指定的目錄
\cp /data/3306/{my.cnf,mysql} /data/3308/ll /data/3308(3)修改配置文件之前一定要備份
\cp /data/3308/{my.cnf,my.cnf.source.bak}\cp /data/3308/{mysql,mysql.source.bak}ll /data/3308/(4)使用sed命令批量更改MySQL的配置文件與啟動腳本
sed -i 's/3306/3308/g' /data/3308/{my.cnf,mysql}sed -i 's/server-id = 1/server-id = 8/g' /data/3308/my.cnf(5)設置3308數(shù)據(jù)庫實例所有者為mysql用戶
chown -R mysql.mysql /data/3308/ll /data/3308/(6)設置第三個數(shù)據(jù)庫實例啟動腳本的權限為700
chmod 700 /data/3308/mysqlll /data/3308/mysql(7)對第三個數(shù)據(jù)庫實例進行初始化數(shù)據(jù)庫操作
cd /application/mysql/scripts/./mysql_install_db --basedir=/application/mysql/ --datadir=/data/3308/data/ --user=mysql(8)授權mysql啟動腳本具有執(zhí)行權限
chmod +x /data/3308/mysql(9)啟動第三個實例的數(shù)據(jù)庫
/data/3308/mysql start(10)啟動完成進行檢查
netstat -lntup|grep 330(11)測試是否可以進入數(shù)據(jù)庫
mysql -S /data/3308/mysql.sock(12)將數(shù)據(jù)庫設置開機自啟動
echo "/data/3308/mysql start" >>/etc/rc.localtail -1 /etc/rc.local六:因為腳本里面設置的密碼是oldboy 所以如果我們不設置將無法停止MySQL
mysqladmin password oldboy -S /data/3306/mysql.sockmysqladmin password oldboy -S /data/3307/mysql.sockmysqladmin password oldboy -S /data/3308/mysql.sockmysql -uroot -poldboy123 -S /data/3306/mysql.sock七:MySQL遠程連接測試
(1)命令使用格式
mysql -uroot -poldboy -h 10.0.0.52 -P 端口號 -P 為端口參數(shù)(2)遠程連接多實例數(shù)據(jù)庫測試
mysql -uroot -poldboy -h 10.0.0.52 -P 3306另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
本文標題:快速筆記01-MySQL多實例的安裝與配置-創(chuàng)新互聯(lián)
當前網(wǎng)址:http://fisionsoft.com.cn/article/eesjg.html