一、安裝前準備
1、在官網下載MySQL安裝包(注意下載的安裝包類型)
2、查看是否安裝mariadb
# rpm -qa | grep mariadb
3、卸載mariadb
# rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
4、安裝MySQL依賴包 libaio
# yum install libaio
5、創建MySQL安裝目錄和數據存放目錄,并授權
# mkdir /usr/local/mysql
# mkdir /usr/local/mysql/mysqldb
# chmod -R 777 /usr/local/mysql
# chmod -R 777 /usr/local/mysql/mysqldb/
6、創建MySQL組:創建MySQL用戶,并設置密碼。
# useradd mysql
# passwd mysql
7、將mysql目錄的權限授給mysql用戶和mysql組
# chown -R mysql:mysql /usr/local/mysql
8、上傳并解壓安裝包(上傳可以通過ftp等工具)
# cd /usr/local/mysql
# tar -zxvf mysql-8.0.16-el7-x86_64.tar.gz
解壓后如下圖:
9、創建MySQL的安裝初始化配置文件my.cnf
# vi /etc/my.cnf
[mysqld]
# 設置3306端口
port=3306
# 設置mysql的安裝目錄
basedir=/usr/local/mysql/mysql-8.0.16-el7-x86_64
# 設置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
二、安裝MySQL
10、安裝MySQL
進入MySQL安裝目錄:
# cd /usr/local/mysql/mysql-8.0.16-el7-x86_64/bin/
安裝MySQL,并記住隨機密碼:
# ./mysqld --initialize --console
11、啟動MySQL服務
# cd ..
# cd support-files/
# ./mysql.server start
注意:如果啟動有問題,請看文章最后的安裝問題!
12、將MySQL加入系統進程中
# cp mysql.server /etc/init.d/mysqld
重啟MySQL服務:
# service mysqld restart
13、修改登錄密碼
# cd ..
# cd bin/
# ./mysql -u root -p
修改密碼:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'centos_data';
三、設置遠程登錄
14、設置允許遠程登錄
mysql> use mysql;
mysql> update user set user.Host='%' where user.User='root';
mysql> flush privileges;
退出MySQL:
mysql> quit;
重啟MySQL服務:
# service mysqld restart
至此MySQL安裝完成!
四、安裝問題解決
安裝問題:
1、啟動MySQL服務問題:
(1)啟動MySQL服務時報 my_print_defaults:未找到命令錯誤。
解決方法:修改 /etc/my.cnf 中的 MySQL的安裝目錄,如圖:
(2)啟動MySQL服務時報 updating PID file 錯誤。
解決方法:在安裝目錄下重新授權,然后再啟動MySQL!
# chmod -R 777 /usr/local/mysql/mysql-8.0.16-el7-x86_64
# chmod -R 777 /usr/local//mysql/mysqldb
2、任意目錄登錄MySQL問題:
原因:
這是由于系統默認會查找 /usr/bin 下的命令,如果這個目錄下沒有這個命令,就會報 未找到命令。
解決方法:創建一個軟連接到 /usr/bin。
# ln -s /usr/local/mysql/mysql-8.0.16-el7-x86_64/bin/mysql /usr/bin
五、設置MySQL開機自啟
1、先將MySQL加入系統進程(第10步已做)
# cp /usr/local/mysql/mysql-8.0.16-el7-x86_64/support-files/mysql.server /etc/init.d/mysqld
賦予可執行權限:# chmod +x /etc/init.d/mysqld
添加為服務:# chkconfig --add mysqld
查看服務列表:# chkconfig --list
注:3、4、5的狀態為開或者on,則表示成功。如果是管或者off,則需要執行:# chkconfig --level 345 mysqld on
最后重啟服務器:reboot
再次查看服務列表或者查看3306端口:
啟動成功!
原文:https://blog.csdn.net/dbdd_cf/article/details/90522178