來源: https://www.imooc.com/article/280427
https://www.cnblogs.com/wangchengpei/p/10957969.html
- 安裝過程會很慢。。。。
mysql版本8.0.16 MySQL Community
操作系統centos7
準備工作:
mysql8.0 rpm文件
- 下載mysql的repo源,下載地址:
進入linux系統,輸入指令:
wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
- 安裝mysql-community-release-el7-5.noarch.rpm包
輸入指令:
sudo rpm -ivh mysql80-community-release-el7-1.noarch.rpm
安裝這個包後,會獲得兩個mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo。
- 安裝mysql
輸入指令:
sudo yum install mysql-server
中間提示就一直Y就好了,等到出現Complete!則表示安裝完成。根據提示安裝就可以了,不過安裝完成後沒有密碼,需要重置密碼
登錄問題
- 登錄時有可能報這樣的錯:ERROR2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2),原因是/var/lib/mysql的訪問權限問題。下面的命令把/var/lib/mysql的擁有者改爲當前用戶:
輸入指令:mysql-u root
這時候會出現ERROR 2002(HY000):報錯
輸入指令:
sudo chown -R root:root /var/lib/mysql
繼續輸入指令:
service mysqld restart
等重新完成後在輸入mysql -u root 就可以看到如下,但是現在又提醒密碼錯誤的信息,輸入指令獲取隨機密碼。
生成隨機密碼
輸入指令:
grep ‘temporary password’ /var/log/mysqld.log
而等用新密碼之後再操作數據庫之後會報出這樣的問題,當我去查詢用戶的時候報這個錯誤:You must reset your password using ALTER USER statement beforeexecuting this statement
大致意思是說:在執行此語句之前,必須使用ALTE USER語句重設密碼。
然後我們需要
設置新密碼
ALTER USER “root”@“localhost” IDENTIFIED BY “********”;
需要注意的是一開始設置簡單密碼一致報錯,是因爲它的密碼設這需要一定的安全等級,設這複雜一點就好了
遠程登錄
1.改表發。
可能是你的賬號不允許從遠程登錄,只能在localhost。這個時候只要在localhost的那臺電腦,登入mysql後更改‘mysql’數據庫裏的‘user’表裏的‘host’項,從‘localhost’改成‘%’
登錄mysq之後指令如下:
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;
- 授權法
例如,你想myuser使用mypassword從任何主機連接到mysql服務器的話。
GRANT ALL PRIVILEGES ON . TO ‘myuser’@’%’ IDENTIFIED BY ‘mypassword’ WITH
GRANT OPTION;
FLUSH PRIVILEGES;
然後重啓服務:service mysqld restart
這裏在linux下安裝mysql8.0就完成了
常見坑預防
- 外網訪問
https://www.jianshu.com/p/0e2ac6942023 - 高版本 mysql 連接報 authentication plugin’caching
https://blog.csdn.net/q258523454/article/details/84555847