Linux(Contos7)下使用SSH遠程安裝MySQL 8.0.17 完整筆記


1. 使用putty 配置遠程服務器連接,登錄服務器。

 由於沒有指定下載包 使用 yum install mysql-server  提示 未指定包,如:

2. 因為甲骨文的收購了Mysql並且對Mysql進行了閉源開發,所以以前的yum下載命令無法獲取到下載包,我們使用rpm方式來安裝,這時我們就需要從官網去下載Mysql的社區版安裝包。

地址:https://dev.mysql.com/downloads/repo/yum/

   使用命令:

wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm 
yum install mysql-community-server

 

3. 安裝完畢,啟動Mysql,  並查看狀態。

service mysqld start
service mysqld status

 

看到綠色的active(running)就代表服務啟動成功了。

 

4. 配置Mysql

 登錄MySQL ,系統初始時使用的默認密碼,如果沒記住,則會登錄失敗

mysql -uroot -p

 提示錯誤,

使用 命令查看初始密碼:grep password

cat /var/log/mysqld.log | grep password

登陸成功。

密碼不好記,下來需要修改root密碼

 注意:重點啊,如果你沒有設置認證方式,默認的密碼加密方式是:caching_sha2_password,而現在很多客戶端工具還不支持這種加密認證方式,連接測試的時候就會報錯:client does not support  authentication protocol requested by server; consider upgrading MySQL client,這里的錯誤信息就是不支持身份認證方式,沒關系,去my.ini里面在[mysqld]下面加上這句話即可:

default_authentication_plugin=mysql_native_password
set global validate_password.policy=0;

set global validate_password.length=1;

ALTER USER "root"@"localhost" IDENTIFIED  BY "****";   // 新密碼為*****

 

 

 

 

使用 nano /etc/my.cnf” 即通過nano 修改 my.cnf文件

 

 

通過光標移動定位需要修改的參數行,例如想要設置max_connections參數,則下面的參數行max_connections=100

然后把max_connections的參數設置成你想要修改的數值,例如110

鍵入Ctrl+O寫入writeout並保存修改

然后,鍵入Ctrl+X退出Nano

查看下編碼:

mysql> show variables like '%character%';

 

 

最后重啟MYSQL以使修改生效。鍵入命令:

systemctl restart mysqld

這樣,max_connections參數就成功從100修改成110,成功配置了MYSQL的配置文件my.cnf

 

5. 打開遠程訪問和授權

對於允許遠程訪問,有兩種角色,一種是我們的root用戶,還有一種是非root用戶,從安全的角度(我也不知道什么角度,聽別人說的,暫且相信着吧),遠程訪問最后不要用root用戶

用root用戶訪問:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '密碼' WITH GRANT OPTION;

這里允許root用戶遠程的時候,如果出現如下的錯誤,就先去把root用的host改成%,再運行上面那句話,對於mysql用戶管理這一塊不熟悉的朋友們,請看我另一篇博客--mysql 用戶及權限管理

非root用戶,這里就要先去創建一個用戶

切換數據庫
mysql>use mysql;

創建用戶(user1:用戶名;%:任意ip,也可以指定,root默認就是localhost;123456:登錄密碼)
mysql>CREATE USER 'user1'@'%' IDENTIFIED BY '123456';

授權,默認創建的用戶權限是usage,就是無權限,只能登錄而已,(all:所有權限,這里有select,update等等權限,可以去搜一下;后面的*.*:指定數據庫.指定表,這里是所有;to后面就是你剛才創建的用戶)

mysql>grant all on *.* to 'user1'@'%';

注意:用以上命令授權的用戶不能給其它用戶授權,如果想讓該用戶可以授權,用以下命令: 
GRANT all ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION; 

6.開啟防火牆

Mysql默認不允許遠程登錄,所以需要開啟遠程訪問權限,可以先查看user表

select user,authentication_string,host from user;

默認都是localhost  

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

此時root的host是所有都可以了

然后刷新修改,

FLUSH PRIVILEGES;

注意:這步一定要做,否則無法生效。

然后開啟防火牆。

 firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

 

 完畢,快樂的使用遠程客戶端連接使用吧!!


免責聲明!

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



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