CentOS 7使用 yum安裝MySQL 5.7
原文:http://www.rzrgm.cn/zsh-blogs/p/11497720.html
注:個人隨筆,僅做筆記使用
1.CentOS 7 下安裝 MySQL 5.7
- 下載并安裝MySQL官方的 Yum Repository
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
- 使用上面的命令就直接下載了安裝用的Yum Repository,大概25KB的樣子,然后就可以直接yum安裝了。
yum -y install mysql57-community-release-el7-10.noarch.rpm
- 開始安裝
yum -y install mysql-community-server
- 啟動數據庫
systemctl start mysqld.service
// 重啟mysql
systemctl restart mysqld.service
- 查看運行狀態
systemctl status mysqld.service
至此MySQL就安裝完成了,然后是對MySQL的一些設置。
- 此時MySQL已經開始正常運行,不過要想進入MySQL還得先找出此時root用戶的密碼,通過如下命令可以在日志文件中找出密碼:
grep "password" /var/log/mysqld.log
- 如下命令進入數據庫:
mysql -uroot -p
// 輸入初始密碼
- 此時不能做任何事情,因為MySQL默認必須修改密碼之后才能操作數據庫:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
// 其中‘new password’替換成你要設置的密碼,注意:密碼設置必須要大小寫字母數字和特殊符號(,/';:等),不然不能配置成功
- 如果要修改為root這樣的弱密碼,需要進行以下配置:
查看密碼策略
show variables like '%password%';
修改密碼策略
vi /etc/my.cnf
添加validate_password_policy配置
選擇0(LOW),1(MEDIUM),2(STRONG)其中一種,選擇2需要提供密碼字典文件
#添加validate_password_policy配置
validate_password_policy=0
#關閉密碼策略
validate_password = off
重啟mysql服務使配置生效
systemctl restart mysqld
然后就可以修改為弱密碼啦
- 開啟mysql的遠程訪問
執行以下命令開啟遠程訪問限制(注意:下面命令開啟的IP是 192.168.0.1,如要開啟所有的,用%代替IP):
grant all privileges on *.* to 'root'@'192.168.0.1' identified by 'password' with grant option;
然后再輸入下面兩行命令
flush privileges;
exit;
- 方法二
use mysql;
select host from user where user='root';
update user set host = '%' where user ='root';
flush privileges;
- 為firewalld添加開放端口
添加mysql端口3306
firewall-cmd --zone=public --add-port=3306/tcp --permanent
然后再重新載入
firewall-cmd --reload
- 關閉防火墻
檢查防火墻,不關閉防火墻, 及時數據庫安裝完畢,外部也無法連接
systemctl stop firewalld #關閉防火墻
systemctl disable firewalld #關閉防火墻開機自啟
setenforce 0 #臨時關閉selinux,此命令重啟服務器后失效,如果想永久關閉,則需要修改/etc/selinux/config
永久關閉selinux的操作:
vi /etc/selinux/config
修改SELINUX參數值為disabled,然后重啟服務器即可
- 修改mysql的字符編碼(不修改會產生中文亂碼問題)
顯示原來編碼:
show variables like '%character%';
修改/etc/my.cnf
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
重啟數據庫

浙公網安備 33010602011771號