下載mysql的源
wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
安裝yum庫
rpm -Uvh platform-and-version-specific-package-name.rpm
yum install mysql
安裝MySQL
yum install -y mysql-community-server
啟動MySQL服務
systemctl start mysqld.service
MySQL5.7加強了root用戶的安全性,因此在第一次安裝后會初始化一個隨機密碼,以下為查看初始隨機密碼的方式
grep 'temporary password' /var/log/mysqld.log
使用初始隨機密碼登錄后MySQL會強制要求修改密碼,否則無法正常使用,(密碼必須包含小寫、大寫字母及特殊字符,當然也有其他方法不受此限制,再次不多做描述),修改方法如下:
SET PASSWORD = PASSWORD('your new password');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
flush privileges;
如果只是修改為一個簡單的密碼,會報以下錯誤:
mysql> ALTER USER USER() IDENTIFIED BY 'root';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
這個其實與validate_password_policy的值有關。
validate_password_policy有以下取值:
默認是1,即MEDIUM,所以剛開始設置的密碼必須符合長度,且必須含有數字,小寫或大寫字母,特殊字符。
修改validate_password_policy參數的值
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
這樣就可以用一個8位數長度的密碼了
mysql> set global validate_password_length=4;
Query OK, 0 rows affected (0.00 sec)
把密碼長度設為4,這樣就可以設置簡單密碼了
然后退出后即可用新密碼登錄。
遠程連接授權:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
開通端口(默認3306):
firewall-cmd --add-port=3306/tcp
設置編碼
// 修改/etc/my.cnf文件
[client]
default-character-set=utf8
[mysqld]
default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci