1. 程式人生 > 其它 >VMware 虛擬機器環境下的ubuntu 上安裝mysql,並能遠端訪問資料庫

VMware 虛擬機器環境下的ubuntu 上安裝mysql,並能遠端訪問資料庫

需求:為了實現在linux上模擬伺服器跑程式碼,並存儲在mysql上,通過遠端視覺化mysql資料庫軟體檢視linux上mysql資料庫資料的實時動態。

1. 虛擬機器和ubuntu的安裝

這裡我選擇的是VMware workstation-v14, ubuntu-18.04.1。至於體流程網上很多,就不多說了。

2. mysql的安裝

開啟終端ctrl + Alt +T,我們可以直接通過sudo 命令實現mysql 的安裝。因為我用的ubuntu版本相對老,所以要先更新一下sudo命令

sudo apt-get update
sudo apt-get upgrade

中間花了我一上午的時間來更新,所以安裝ubuntu儘量選擇新一點的版本。。。

然後再輸入安裝mysql的命令

sudo apt-get install mysql-server
sudo apt-get install mysql-client

第一次安裝的時候會輸入密碼和其他確認選項,直接填完事。然後輸入命令:

systemctl status mysql.service #檢視mysql服務是否啟起來了

如果出現綠色 active(running) 字樣說明mysql服務正常啟動

2.1 安裝錯誤1:ERROR 1045 (28000): Access denied for user root@localhost

然後從root使用者下進入MySQL,發現進不了,出現這樣的錯誤:

在網上查了一下發現是mysql密碼設定問題,反正之前一步步安裝時設定的密碼也不對,也不知道是咋回事,通過修改mysqld.cnf配置檔案來跳過密碼驗證,輸入:

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

利用vi在mysqld.cnf檔案最後一行新增skip-grant-tables, 儲存後退出

再從命令列用sudo mysql -u root -p這裡會讓輸入密碼,不用管直接回車就可以進入mysql

然後通過命令修改mysql的密碼:

use mysql; # 選擇資料庫
update user set authentication_string="密碼" where user='root'; # mysql新版本用authentication_string替代password欄位

修改後我們要註釋掉mysqld.cnf中新增的skip-grant-tables,儲存後退出。再輸入

mysql -u root -p'密碼' 

成功進入

2.2 安裝錯誤2:2003-Can't connect to MySQL server on '虛擬機器ip'(10060 “Unknown error")

但是這個時候我們通過本機的naivcat 訪問mysql, 發現出現上面的錯誤,這是沒有設定mysql的遠端訪問,仍然需要編輯mysql.cnf檔案。同樣輸入

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

bind-address = 127.0.0.1註釋掉,同樣儲存退出

然後我們進入mysql 授權命令給遠端電腦登入資料庫:

GRANT ALL PRIVILEGeS ON *.* 'root'@'%'IDENTIFIED BY '密碼' WITH GRANT OPTION;
flush privilges;

可以通過select 命令檢視user表中Host欄位中root 一行變成了"%"說明修改成功

退出mysql, 並重啟mysql服務:service mysql restart

3. navicat 連線

再linux上通過ifconfig找到ip, 在navicat上輸入ip及mysql 的賬戶和密碼。解決了上述的安裝錯誤,成功登入ubuntu中的mysql資料庫。