1.去官網下載安裝包
下載鏈接:
https://dev.mysql.com/downloads/
2. 查看系統是否已經安裝mariadb
rpm -qa | grep mariadb
如果有類似如圖信息,將mariadb卸載
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
3.安裝MySQL依賴包libao
yum install libaio
4. 創建MySQL安裝目錄和數據存放目錄
mkdir /usr/local/mysql
mkdir /usr/local/mysql/mysqldb
5. 創建MySQL組:創建MySQL用戶,並設置密碼。
useradd mysql
passwd mysql
6. 將mysql目錄的權限授給mysql用戶和mysql組。
chown -R mysql:mysql /usr/local/mysql
7. 上傳安裝包(FileZilla SecureCRT都可以 上傳)
FileZilla:
SecureCRT:
1. Alt + p進入ftp界面
2. cd /usr/local/mysql/ #進入到要上傳的目錄
3. put E:\Book\oracle\mysql-8.0.22-el7-x86_64.tar.gz #將目標文件上傳
8.解壓安裝包
1. cd /usr/local/mysql
2. tar -zxvf mysql-8.0.22-el7-x86_64.tar.gz
3. mv mysql-8.0.22-el7-x86_64/* ./ #將mysql-8.0.22-el7-x86_64目錄下的所有文件移動到/usr/local/mysql目錄下
4. rm -rf mysql-8.0.22-el7-x86_64 mysql-8.0.22-el7-x86_64.tar.gz #解壓完后可以將mysql-8.0.22-el7-x86_64目錄和壓縮包刪除
9.給mysql目錄授權
chmod -R 777 /usr/local/mysql
chmod -R 777 /usr/local/mysql/mysqldb/
10.在系統根目錄的/etc創建MySQL的安裝初始化配置文件my.cnf
創建my.cnf文件
vim /etc/my.cnf
內容如下:
[mysqld]
# 設置3306端口
port=3306
# 設置mysql的安裝目錄
basedir=/usr/local/mysql
# 設置mysql數據庫的數據的存放目錄
datadir=/usr/local/mysql/mysqldb
# 允許最大連接數
max_connections=10000
# 允許連接失敗的次數。這是為了防止有人從該主機試圖攻擊數據庫系統
max_connect_errors=10
# 服務端使用的字符集默認為UTF8
character-set-server=utf8
# 創建新表時將使用的默認存儲引擎
default-storage-engine=INNODB
# 默認使用“mysql_native_password”插件認證
default_authentication_plugin=mysql_native_password
[mysql]
# 設置mysql客戶端默認字符集
default-character-set=utf8
[client]
# 設置mysql客戶端連接服務端時默認使用的端口
port=3306
default-character-set=utf8
11.安裝MySQL8.0.22
1、進入MySQL安裝目錄的bin目錄下
cd /usr/local/mysql/bin
2、執行命令,並記住隨機密碼
./mysqld --initialize --console
12.啟動MySQL服務
1、cd /usr/local/mysql/support-files #進入support-files
2、./mysql.server start #啟動mysql服務
PS: 此處容易出現的問題:
1、啟動MySQL服務時報 my_print_defaults:未找到命令錯誤。
解決方法:檢查並修改 /etc/my.cnf 中的 MySQL的安裝目錄!
檢查my.cnf文件中的mysql安裝目錄的地址是否與創建的一致,如果不一致改成MySQL的安裝目錄。
2.報without updating PID file錯誤
解決辦法:
該問題出現的原因是解壓mysql的tar包文件,權限不夠。只需要重新授權即可:
chmod -R 777 /usr/local/mysql
chmod -R 777 /usr/local//mysql/mysqldb
13.將MySQL加入系統進程中
1、cp mysql.server /etc/init.d/mysqld
然后重啟MySQL服務:
2、service mysqld restart
14.創建一個軟連接到 /usr/bin。
ln -s /usr/local/mysql/bin/mysql /usr/bin
PS:
由於/usr/bin已經添加到環境變量PATH中了,只需要將mysql的軟連接添加到/usr/bin即可全局訪問
15.修改登錄密碼
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密碼';
16.設置允許遠程登錄
1、mysql> use mysql;
2、mysql> update user set user.Host='%' where user.User='root';
3、mysql> flush privileges;
退出MySQL:
mysql> quit;
重啟MySQL服務:
service mysqld restart
檢查3306端口是否開放
netstat -nupl|grep 3306
開放3306端口
firewall -cmd --permanent --add-prot=3306/tcp
重啟防火牆
firewall -cmd --reload
至此MySQL安裝完成!