Linux安裝mysql8.0

一、安裝前準(zhǔn)備

1、在官網(wǎng)下載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、創(chuàng)建MySQL安裝目錄和數(shù)據(jù)存放目錄,并授權(quán)

# mkdir /usr/local/mysql

# mkdir /usr/local/mysql/mysqldb

# chmod -R 777 /usr/local/mysql

# chmod -R 777 /usr/local/mysql/mysqldb/

6、創(chuàng)建MySQL組:創(chuàng)建MySQL用戶,并設(shè)置密碼。

# useradd mysql

# passwd mysql

7、將mysql目錄的權(quán)限授給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、創(chuàng)建MySQL的安裝初始化配置文件my.cnf

# vi /etc/my.cnf

[mysqld]

# 設(shè)置3306端口

port=3306

# 設(shè)置mysql的安裝目錄

basedir=/usr/local/mysql/mysql-8.0.16-el7-x86_64

# 設(shè)置mysql數(shù)據(jù)庫的數(shù)據(jù)的存放目錄

datadir=/usr/local/mysql/mysqldb

# 允許最大連接數(shù)

max_connections=10000

# 允許連接失敗的次數(shù)。這是為了防止有人從該主機試圖攻擊數(shù)據(jù)庫系統(tǒng)

max_connect_errors=10

# 服務(wù)端使用的字符集默認(rèn)為UTF8

character-set-server=utf8

# 創(chuàng)建新表時將使用的默認(rèn)存儲引擎

default-storage-engine=INNODB

# 默認(rèn)使用“mysql_native_password”插件認(rèn)證

default_authentication_plugin=mysql_native_password

[mysql]

# 設(shè)置mysql客戶端默認(rèn)字符集

default-character-set=utf8

[client]

# 設(shè)置mysql客戶端連接服務(wù)端時默認(rèn)使用的端口

port=3306

default-character-set=utf8

二、安裝MySQL

10、安裝MySQL

進(jìn)入MySQL安裝目錄:

# cd /usr/local/mysql/mysql-8.0.16-el7-x86_64/bin/

安裝MySQL,并記住隨機密碼:

# ./mysqld --initialize --console

11、啟動MySQL服務(wù)

# cd ..

# cd support-files/

# ./mysql.server start

?注意:如果啟動有問題,請看文章最后的安裝問題!

12、將MySQL加入系統(tǒng)進(jìn)程中

# ?cp mysql.server /etc/init.d/mysqld

重啟MySQL服務(wù):

# service mysqld restart

13、修改登錄密碼

#?cd ..

# cd bin/

# ./mysql -u root -p

這里輸入密碼可能會報1045的錯誤,mysql8.0和以前的版本密碼機制有點區(qū)別,

MySQL8.0采用了新的更安全的驗證方式,原有修改密碼方法修改密碼后無法登錄

如果無法登錄進(jìn)去:

修改配置文件:my.conf

在[mysqld]下面加上一行? ? ? skip-grant-tables?

修改密碼和密碼方式:

mysql>update mysql.user setauthentication_string="123456" where user="root" and?host='localhost';

mysql>ALTER USER "root"@"localhost" IDENTIFIED BY '123456';

三、設(shè)置遠(yuǎn)程登錄

14、設(shè)置允許遠(yuǎn)程登錄

mysql> use mysql;

mysql> update user set user.Host='%' where user.User='root';

mysql> flush privileges;

詳細(xì)設(shè)置請參考另一篇文章:https://blog.csdn.net/dbdd_cf/article/details/93734336?

退出MySQL:

mysql> quit;

重啟MySQL服務(wù):

?#?service mysqld restart

至此MySQL安裝完成!

四、安裝問題解決

安裝問題:

1、啟動MySQL服務(wù)問題:

(1)啟動MySQL服務(wù)時報 my_print_defaults:未找到命令錯誤。

解決方法:修改 /etc/my.cnf 中的?MySQL的安裝目錄,如圖:

(2)啟動MySQL服務(wù)時報 updating PID file?錯誤。

?解決方法:在安裝目錄下重新授權(quán),然后再啟動MySQL!

#?chmod -R 777 /usr/local/mysql/mysql-8.0.16-el7-x86_64

# chmod -R 777 /usr/local//mysql/mysqldb

?2、任意目錄登錄MySQL問題:

原因:

這是由于系統(tǒng)默認(rèn)會查找 /usr/bin?下的命令,如果這個目錄下沒有這個命令,就會報?未找到命令。

解決方法:創(chuàng)建一個軟連接到 /usr/bin。

?# ln -s /usr/local/mysql/mysql-8.0.16-el7-x86_64/bin/mysql /usr/bin

五、設(shè)置MySQL開機自啟

1、先將MySQL加入系統(tǒng)進(jìn)程(第10步已做)

# cp /usr/local/mysql/mysql-8.0.16-el7-x86_64/support-files/mysql.server ?/etc/init.d/mysqld

賦予可執(zhí)行權(quán)限:# chmod +x /etc/init.d/mysqld

添加為服務(wù):# chkconfig --add mysqld

查看服務(wù)列表:# chkconfig --list

?注:3、4、5的狀態(tài)為開或者on,則表示成功。如果是管或者off,則需要執(zhí)行:# chkconfig --level 345 mysqld on

最后重啟服務(wù)器:reboot

再次查看服務(wù)列表或者查看3306端口:

啟動成功!?

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容