在CentOS中默認安裝有MariaDB,這個是MySQL的分支,但爲了需要,還是要在系統中安裝MySQL,而且安裝完成之後可以直接覆蓋掉MariaDB。
1 下載並安裝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
之後就開始安裝MySQL服務器。
yum -y install mysql-community-server
這步可能會花些時間,安裝完成後就會覆蓋掉之前的mariadb。
不過我安裝的好像挺快的~~~
至此MySQL就安裝完成了,然後是對MySQL的一些設置。
2 MySQL數據庫設置
首先啓動MySQL
systemctl start mysqld.service
查看MySQL運行狀態,運行狀態如圖:
systemctl status mysqld.service
此時MySQL已經開始正常運行,不過要想進入MySQL還得先找出此時root用戶的密碼,通過如下命令可以在日誌文件中找出密碼:
grep "password" /var/log/mysqld.log
初始密碼如圖所示。
然後再通過 如下命令進入數據庫:
mysql -uroot -p
輸入初始密碼,此時不能做任何事情,因爲MySQL默認必須修改密碼之後才能操作數據庫:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密碼';
這裏有個問題,新密碼設置的時候如果設置的過於簡單會報錯,
ERROR 1819 (HY000): Your password does not satisfy the current policy requir
原因是因爲MySQL有密碼設置的規範,具體是與validate_password_policy的值有關:
MySQL完整的初始密碼規則可以通過如下命令查看:
SHOW VARIABLES LIKE 'validate_password%';
validate_password_length是8。可以通過如下命令修改:
set global validate_password_policy=0;
set global validate_password_length=1;
此時密碼就可以設置的很簡單,例如1234之類的。到此數據庫的密碼設置就完成了。
好了,最後我們重啓一下MySQL服務,命令如下
先輸入exit退出MySQL命令行
systemctl restart mysqld.service
到這裏就算安裝完成了!!!
Complete~!
哦,對了
但此時還有一個問題,就是因爲安裝了Yum Repository,以後每次yum操作都會自動更新,需要把這個卸載掉:
yum -y remove mysql57-community-release-el7-10.noarch
此時纔算真的完成了。
二次更新
更新MySQL設置遠程訪問
設置步驟
1,mysql -u root -p
2,輸入密碼進入MySQL。
3,輸入命令:use mysql;
進入數據庫mysql。
4,修改方法如下:
輸入
grant all privileges on *.* to root@"xxx.xxx.xxx.xxx" identified by "密碼";
這相當於是給IP-xxx.xxx.xxx.xxx賦予了所有的權限,包括遠程訪問權限
如果
你想讓root用戶,密碼爲mypassword的用戶 從任何主機連接到mysql服務器的話。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如此就可以允許遠程主機通過密碼登錄。
然後再輸入
flush privileges;
刷新權限,不需要重啓mysql服務
第三次更新
如果還是不能訪問的話,那麼應該是你的防火牆或者服務器安全組設置了端口攔截。
這裏你可以看我另一篇文章有詳細介紹讓端口穿透防火牆
好了,如果還不能訪問請留言告知!!!!