在 Centos 7(騰訊雲服務器) 中安裝 MySql 8,並實現遠程連接數據庫


前言

這是我在安裝過程中遇到的坑,結合網上各種經驗貼,記錄的一篇筆記,以防日后遺忘。

在 Centos7.6 中安裝 MySql

1、添加 yum 包

wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm

2、安裝 Mysql

yum install mysql-community-server

3、啟動 MySql

# 啟動守護進程
sudo systemctl start mysqld

安裝完后,MySQL 會在系統啟動時自動啟動,如果不想讓它自動啟動,可以使用 systemctl disable mysqld 關閉它。

配置 MySql

1、修改登錄密碼

mysql 安裝完成之后,在 /var/log/mysqld.log 文件中給 root 生成了一個默認密碼。通過下面的方式找到 root 默認密碼,然后登錄 mysql 進行修改:

grep 'temporary password' /var/log/mysqld.log

如下圖,圈起來的就是默認密碼:

本地 MySQL 客戶端登錄:

mysql -u root -p

再輸入默認密碼,就可以進入 Mysql 客戶端:

然后修改密碼:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Test@123456';

密碼強度要求是:不少於12字符,必須包含大寫字母、小寫字母、數字和特殊字符。

如果想設置如 123456 這樣簡單的密碼,我們需更改 MySql 的密碼策略。

注意,一定要先設置一個復雜且符合要求的密碼,再進行后續操作。

2、為了設置簡單密碼,修改密碼策略

先進入 MySQL 客戶端

// 第一步
mysql -u root -p

// 第二步
輸入密碼

如果已經在 MySQL 客戶端中,就忽略這步。

查看MySQL完整的初始密碼規則,登陸后執行以下命令

SHOW VARIABLES LIKE 'validate_password%';

修改密碼長度:

set global validate_password.length=6;

修改密碼等級:

set global validate_password.policy=0;

再次執行修改密碼語句:

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

使用 quit 退出 MySQL 客戶端,重新啟動mysql服務使配置生效:

systemctl restart mysqld

然后,就可以使用新密碼 123456 登陸了。

設置遠程登錄

默認只允許 root 帳戶在本地登錄,如果要在其它機器上連接 mysql,必須修改 root 允許遠程連接,或者添加一個允許遠程連接的帳戶。

首先進入 MySQL 客戶端,修改 root 用戶遠程訪問權限:

選擇 mysql 數據庫:

use mysql;

在 mysql 數據庫的 user 表中查看當前 root 用戶的相關信息:

select host, user from user;

查看表格中 root 用戶的 host,默認應該顯示的 localhost,只支持本地訪問,不允許遠程訪問。

授權 root 用戶設置遠程訪問:

update user set host='%' where user ='root';

然后使用下面命令使修改生效:

flush privileges;

遠程登錄

這里,我使用的 MySQL-font 進行遠程登錄安裝在騰訊雲服務器上的 MySQL。

輸入主機 IP 和 MySQL 密碼,就可以了。

登錄后,如下圖:

安裝 MySQL8 后,自帶有 information_schema、mysql、performance_schema、sys 這四個數據庫。

參考文章

CentOS7安裝mysql8.0.12

在 CentOS 7 中安裝 MySQL 8

遠程連接數據庫 出現 Client does not support authentication protocol requested by server的解決方法

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'localhost'

每天學習一點點,每天進步一點點。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM