linux系統為win10自帶Ubuntu子系統
錯誤的安裝過程
我按照一般的方法安裝mysql,安裝步驟如下
1.升級源
$ sudo apt-get update
2.安裝mysql
$ sudo apt-get install mysql-server
3.安裝好之后運行mysql -uroot -p
喜聞樂見報錯了
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
在網上找各種辦法試錯無數,最終終於找到了解決方法
mysql卸載方法
1.先把安裝錯誤的mysql
卸載
$ sudo apt-get remove mysql-*
2.然后清理殘留數據
$ dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
正確的安裝方式
1.先更新下軟件庫
$ sudo apt-get update
2.在mysql官網下載deb文件並運行
https://dev.mysql.com/downloads/file/?id=477124
$ sudo dpkg -i mysql-apt-config_0.8.10-1_all.deb
它會讓你選擇想要安裝的版本和一些配置,選好之后選ok就會生成相應的配置
3.再更新下軟件庫
$ sudo apt-get update
4.這時候就可以安裝想要安裝的版本
$ sudo apt-get install mysql-server
安裝過程中根據安裝的版本不同可能會提醒你設置root密碼,如果設置了就好辦,沒有設置,看下面的步驟即可
5.檢查mysql運行狀態
$ sudo service mysql status
6.運行mysql服務
$ sudo service mysql start
設置密碼
8.0版本在安裝的時候並沒有提示讓我設置root的密碼,所以當我使用$ mysql -uroot -p
登錄的時候會提醒我
ERROR 1045 (28000): Access denied for user ‘root’@'localhost’
1.我們先獲取默認的賬號密碼,我們打開記錄密碼的文檔
$ sudo vim /etc/mysql/debian.cnf
內容如下
[client]
host = localhost
user = debian-sys-maint
password = 0eqyBUNFAnsNddnS
socket = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host = localhost
user = debian-sys-maint
password = 0eqyBUNFAnsNddnS
socket = /var/run/mysqld/mysqld.sock
2.使用第一組賬號密碼進行登錄
$ mysql -udebian-sys-maint -p0eqyBUNFAnsNddnS
3.登錄成功,進入mysql命令行,依次輸入以下幾條命令,不要忘記分號
//展示存在的數據庫
mysql> show databases;
//切換使用的數據庫
mysql> use mysql;
//更新密碼
mysql> update user set authentication_string=PASSWORD("自定義密碼") where user='root';
//修改身份驗證方式
mysql> update user set plugin="mysql_native_password";
//刷新權限
mysql> flush privileges;
//退出mysql命令行
mysql> quit;
4.重啟mysql服務
$ sudo service mysql restart
5.使用新賬號密碼即可登錄mysql
$ mysql -uroot -p
Enter password:新密碼
參考文獻
https://www.cnblogs.com/yahengwang/p/10112701.html
https://blog.csdn.net/qq_35531549/article/details/86379736