-
前言
前段時間領導讓我部署測試環境,希望安裝高版本的MySQL,過程遇到很多問題,特此記錄幫助迷失的人們
-
下載
MySQL官方下載地址:https://dev.mysql.com/downloads/mysql/

如圖所示,點擊DOWNLOAD下載即可
-
安裝
將下載好的壓縮包上傳到Linux服務器 /usr/local目錄下
.gz解壓:
tar -zxvf mysql-XXX.tar.gz
.xz解壓:
unzip mysql-XXX.tar.xz
重命名(最好這樣做,因為mysql官網默認安裝路徑:/usr/local/mysql):
mv mysq-XXX mysql
創建數據存儲文件夾:
mkdir /usr/local/mysql/data
創建用戶及用戶組:
# 用戶組 groupadd mysql # 用戶 (用戶名/密碼) useradd -g mysql mysql # 授權 chown -R mysql.mysql /usr/local/mysql/
* 編輯 /etc/my.cnf 文件(最重要的一步來了,mysql8通用配置,沒有該文件則新建):
[mysqld] # 設置3306端口 port=3306 # 設置mysql的安裝目錄 basedir=/usr/local/mysql # 設置mysql數據庫的數據的存放目錄 datadir=/usr/local/mysql/data # 允許最大連接數 max_connections=200 # 允許連接失敗的次數。這是為了防止有人從該主機試圖攻擊數據庫系統 max_connect_errors=10 # 服務端使用的字符集默認為UTF8 character-set-server=utf8mb4 # 創建新表時將使用的默認存儲引擎 default-storage-engine=INNODB # 默認使用“mysql_native_password”插件認證 default_authentication_plugin=mysql_native_password user=mysql lower_case_table_names=1 default-time-zone='+8:00' sql_mode=NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE [client] # 設置mysql客戶端連接服務端時默認使用的端口 port=3306 default-character-set=utf8mb4
初始化數據庫:
mysqld --initialize --console
# 網上有好多在初始化數據庫的時候設置好多參數,我這里說明下,因為我們在 /etc/my.cnf 文件里編輯了我們所需的所有配置,MySQL初始化時首先默認讀取 my.cnf 文件
# 所以我們直接執行初始化命令就好,當然也可以不配置 my.cnf 文件且初始化的時候設置參數即可,但是初始化命令不可逆轉,如果后面啟動服務失敗只能卸載重新安裝
建立MySQL服務:
ln -s /usr/local/mysql/bin/mysql /usr/bin
將MySQL服務加入自啟動:
cp -a ./support-files/mysql.server /etc/init.d/mysql chmod +x /etc/init.d/mysql # 加入自啟動 chkconfig --add mysql # 檢查服務是否生效 chkconfig --list mysql
啟動mysql服務:
# 啟動
service mysql start
# 查看啟動狀態
service mysql status
以安全模式登錄MySQL:
# 安全模式登錄 ./bin/mysqld_safe --skip-grant-tables # 打開新窗口登錄mysql ./usr/local/mysql/bin/mysql -u root
修改root密碼:
use mysql; update user set host='%' where user='root'; update mysql.user set Password=password('root') where User='root'; grant all privileges on *.* to root@"%" identified by 'root'; flush privileges;
查看進程號並殺死MySQL安全服務:
ps -ef|grep mysql kill -9 進程號
導入sql文件
mysql -uroot -D數據庫名 < XXX.sql
至此,mysql安裝完畢,我們就可以愉快的玩耍了
-
卸載
若過程出現操作不當,需要卸載MySQL也很簡單,因為我們並沒有使用 yum 或 rpm 命令等等,所以只有兩步
關閉MySQL服務:
service mysql stop
刪除MySQL文件:
rm -rf $(find / -name mysql)
