1. 程式人生 > 實用技巧 >阿里雲Centos7安裝mysql5.7

阿里雲Centos7安裝mysql5.7

一、下載mysql5.7


# 下載mysql的rpm包
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
# 安裝yum
rpm -Uvh mysql57-community-release-el7-11.noarch.rpm
#檢視yum倉庫mysql啟動列表
yum repolist enabled | grep mysql
# 通過yum安裝mysql
yum install mysql-community-server

## 二、啟動mysql的服務
注意這裡是centos7以上的命令,centos6可能有些許不同

#啟動MySQL服務
systemctl start mysqld.service

#檢視MySQL啟動狀態
systemctl status mysqld.service

#設定開機啟動
systemctl enable mysqld
systemctl daemon-reload

我們可以用如下命令檢視mysql的狀態

netstat -nlp


## 三、登入mysql並修改密碼
大家可能有注意到這和我們在windows上用installer安裝有些不同,我們沒有經過任何配置甚至是設定埠和密碼就已經安裝好了,其實mysql在/var/log/mysqld.log檔案中給root使用者設定了一個初始的密碼。



# 檢視mysqk的初始密碼♥
grep "password" /var/log/mysqld.log


用上述的命令我們可以檢視到mysql的初始密碼,可以用這個密碼登入

mysql -uroot -p


登陸成功後需要注意:用該密碼登入到服務端後,必須馬上修改密碼,不然會報如下錯誤:

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.


我們需要重新設定密碼,且密碼不能夠太簡單,至少是八位,且至少包含一個數字,一個特殊字元以及大小寫字元各一個.詳情可以檢視這篇文章

https://www.cnblogs.com/ivictor/p/5142809.html

修改密碼,by後面就是密碼

ALTER user 'root'@'localhost' identified by '****'


用exit命令退出mysql,然後需要對資料庫進行配置,預設的配置檔案是/etc目錄下的my.cnf檔案,我們是用vim編輯器開啟

vim /etc/my.cnf

[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
character-set-client-handshake = FALSE

character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

init_connect = 'SET NAMES utf8mb4'
lower_case_table_names = 1
bind-address = 0.0.0.0 # 表示允許任何主機登陸,為了使用navicat遠端登入


最後對資料庫進行授權遠端登入

# 登陸資料庫
mysql -uroot -p

# 使用資料庫
use mysql;

# 設定許可權,新建一個admin使用者密碼為123456,*.*表示可以對所有資料庫所有表進行操作,%是指所有主機都能訪問,這裡你也可以對root使用者授權進行遠端訪問
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

# 重新整理許可權
flush privileges;

#退出,重啟服務
service mysqld restart


如果Centos7防火牆沒關需要關閉防火牆或者開放3306埠,這裡我直接關閉防火牆

systemctl status firewalld.service # 檢視防火牆狀態
systemctl stop firewalld.service # 關閉防火牆

最後,我是用的是阿里雲一定要在阿里雲管理控制檯找的例項中將3306埠加入到入網安全組,否則使用navicat連線會報錯,如圖

完成!!使用navicat測試

以上是我個人筆記,如有錯誤請指出!!