Linux---一台主机部署多版本mysql服务和mysql实例
1.背景
服務器上有mysql5.5.38,要求升級為mysql5.6
2.方法
為了降低影響范圍,可持續作業,決定在現有基礎上部署mysql5.6,即部署多版本mysql
3.注意事項
1.與現有mysql安裝目錄不能相同
2.與現有mysql數據庫文件目錄不能相同
3.與現有msql的啟動端口不能相同(默認3306)
4.與現有mysql的服務的socket不能相同,即my.cnf里面的socket的設置不能一樣
5.與現有mysql的服務的pid文件不能相同,即my.cnf里面的pid-filed設置不能一樣
4.步驟
1.創建用戶組和用戶&創建目錄
創建用戶組和用戶
groupadd mysqluseradd -g mysql mysql
創建目錄
mkdir /home/mysql/basemkdit /home/mysql/data
chrom -R mysql:mysql base
chrom -R mysql:mysql data
2.下載源碼包&解壓
下載地址:https://dev.mysql.com/downloa...
選項Select Operating System:linux-generic
tar -zxvf mysql-5.6.37-linux-glibc2.12-x86_64.tar.gz
cp -r mysql-5.6.37-linux-glibc2.12-x86_64 /home/mysql/base //復制解壓后的包
cd /home/mysql/base
mv mysql-5.6.37-linux-glibc2.12-x86_64 mysql-5.6.37 //重命名文件夾
3.安裝
cd /home/mysql/base/mysql-5.6.37/scriptsmysql_install_db --basedir=/home/mysql/base/mysql-5.6.37 --datadir=/home/mysql/data/5.6.37/st01 --user=mysql
安裝后可查看數據庫目錄有如下文件,創建另一個端口的mysql服務可直接復制這個文件夾
cd /home/mysql/data/5.6.37/st01ll -ah
total 110600
-rw-rw----. 1 mysql mysql 12582912 Sep 21 23:19 ibdata1
-rw-rw----. 1 mysql mysql 50331648 Sep 21 23:19 ib_logfile0
-rw-rw----. 1 mysql mysql 50331648 Sep 21 23:19 ib_logfile1
drwx------. 2 mysql mysql 4096 Sep 21 23:19 mysql
drwx------. 2 mysql mysql 4096 Sep 21 23:19 performance_schema
drwx------. 2 mysql mysql 6 Sep 21 23:19 test
4.配置文件設置
復制一份配置文件
cd /home/mysql/data/mysql-5.6.37/st01cp /home/mysql/base/5.6.16/support-files/my-default.cnf ./my.cnf
修改配置文件
vi ./my.cnfport = 9701
socket = /home/mysql/data/5.6.37/st01/mysql.sock
basedir = /home/mysql/base/5.6.37
datadir = /home/mysql/data/5.6.37/st01
......
[mysqld_safe]
log-error = /home/mysql/data/5.6.37/st01/mysqld.log
pid-file = /home/mysql/data/5.6.37/st01/mysql.pid
5.服務管理
1.啟動服務
/home/mysql/base/5.6.37/bin/mysqld_safe --defaults-file=./my.cnf --user=mysql&2.查看服務
ps查看mysql進程
也可以查看log信息看啟動情況
cat /home/mysql/data/5.6.37/st01/mysqld.log3.關閉服務
/home/mysql/base/5.6.37/bin/mysqladmin -P 9701 -S /home/mysql/data/5.6.37/st01/mysql.sock -u root -p shutdown暴力關閉(有數據丟失風險)
ps -ef | grep 端口號 //命令結果第二列為進程號kill -9 進程號 //強制殺掉進程
6.用戶設置
6.1 本地訪問
安裝好后,mysql默認只有root用戶(此用戶是mysql用戶,而非Linux用戶),并且沒有密碼
1.給默認的root用戶設置密碼(設置后只允許localhost本地訪問)
/home/mysql/base/5.6.37/bin/mysqladmin -P 9701 -S /home/mysql/data/5.6.37/st01/mysql.sock -u root password 'password123'2.給默認的root用戶修改密碼
/home/mysql/base/5.6.37/bin/mysqladmin -P 9701 -S /home/mysql/data/5.6.37/st01/mysql.sock -u root -p password 'password1234'6.2 遠程訪問
1.進入mysql
/home/mysql/base/5.6.37/bin/mysql -P 9701 -S /home/mysql/data/5.6.37/st01/mysql.sock -u root -p按提示輸入密碼
2.1 方法一:grant 賦予用戶root所有權限
grant 權限1,權限2,…權限n on 數據庫名稱.表名稱 to 用戶名@用戶地址 identified by ‘連接口令’;
2.2 方法二:root對應的host成%,表示可以任意IP地址登錄
mysql>update user set host = '%' where user = 'root';3.刷新配置后退出
mysql>flush privileges;mysql>exit;
總結
以上是生活随笔為你收集整理的Linux---一台主机部署多版本mysql服务和mysql实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里RocketMQ是怎样孵化成Apac
- 下一篇: 自己动手写一个 SimpleVue