阿里雲mysql安裝配置和使用
阿新 • • 發佈:2021-08-07
首先,確認是否有預裝的mysql
rpm -qa|grep -i mysql
如果有,刪除掉
rpm -e --nodeps 檔名
沒有的話直接進行下一步,複製以下三個命令,分別執行,過程中需要點幾次y(表示yes)
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
yum localinstall mysql80-community-release-el7-3.noarch.rpm
yum install mysql-community-client mysql-community-server
因為是使用 rpm安裝的 ,無需配置,可直接使用,接下來開啟服務
systemctl start mysqld #啟動mysql服務
systemctl enable mysqld #設定開機啟動
systemctl status mysqld #檢查mysql狀態
在 這裡我遇到一個問題,這裡的active為exited(正常的話 應該是running)
我沒在意,但是當我想檢視mysql.log裡生成的臨時密碼時,發現找不到,這就有問題了呀,一番查詢,發現是自己刪除以前安裝的mysql時沒有刪除乾淨,解決方式:
rm -rf /var/lib/mysql
systemctl restart mysqld
先刪除/var/lib/mysql,再重啟,此時使用systemctl status mysqld,可以得到
好了,接下來繼續,獲取臨時密碼,登陸mysql
grep 'temporary password' /var/log/mysqld.log
可以得到臨時密碼如下:
root@localhost:後面的就是生成的臨時密碼
使用命令
mysql -u root -p 密碼
進行登陸,然後修改密碼
alter user'root'@'localhost' identified by '新密碼'
密碼要求要大小寫數字和特殊字元,不符合格式的話會報錯
接下來配置遠端登陸的許可權
use mysql; update user set user.Host='%' where user.User='root'; flush privileges;#重新整理許可權
配置驅動改成密碼驅動
ALTER USER 'root'@'%' IDENTIFIED BY '新密碼' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '新密碼';
FLUSH PRIVILEGES;
到這裡,差不多已經配置好了,然後我打開了Navicat連線資料庫,又報錯了!
1045-Access denied for user 'root'@'localhost'解決方法
解決方式:
先授權給登陸的root使用者,flush privileges 使更改立即生效
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '新密碼';
FLUSH PRIVILEGES;
再次連線,終於連上了。