Ubuntu 16.04 MySQL安裝及遇到問題解決方法


1、安裝MySQL

Ubuntu 16.04 中,默認情況下,只有最新版本的 MySQL 包含在 APT 軟件包存儲庫中。在撰寫本文時,那是 MySQL 5.7

要安裝它,只需更新服務器上的包索引並安裝默認包 apt-get

sudo apt-get update

sudo apt-get install mysql-server

系統將提示您在安裝過程中創建 root 密碼。選擇一個安全的密碼,並確保你記住它,因為你以后需要它。接下來,我們將完成 MySQL 的配置。

 

2、配置MySQL

 

因為是全新安裝,您需要運行附帶的安全腳本。這會更改一些不太安全的默認選項,例如遠程 root 登錄和示例用戶。在舊版本的 MySQL 上,您需要手動初始化數據目錄,但 Mysql 5.7 已經自動完成了。

運行安全腳本。

 

sudo mysql_secure_installation

這將提示您輸入您在步驟1中創建的 root 密碼。您可以按 Y,然后 ENTER 接受所有后續問題的默認值,但是要詢問您是否要更改 root 密碼。您只需在步驟 1 中進行設置即可,因此無需現在更改。

最后,我們來測試MySQL安裝。

 

3、測試MySQL

 

按上邊方式安裝完成后,MySQL應該已經開始自動運行了。要測試它,請檢查其狀態。

systemctl status mysql.service

 

您將看到類似於以下內容的輸出:

mysql.service - MySQL Community Server

Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en Active: active (running) since Wed 2016-11-23 21:21:25 UTC; 30min ago Main PID: 3754 (mysqld) Tasks: 28 Memory: 142.3M CPU: 1.994s CGroup: /system.slice/mysql.service └─3754 /usr/sbin/mysqld

如果MySQL沒有運行,您可以啟動它:

sudo systemctl mysql start

 

4、遇到問題及解決方法

1)使用navicat遠程連接mysql時報錯ERROR 2003

原因就是Mysql數據庫的默認配置文件my.cnfubuntu 16.04下是/etc/mysql/mysql.conf.d/mysqld.cnf)中的bind-address默認為127.0.0.1,所以就算你創建了可以 remote訪問的用戶,你也不能使用mysql -h命令進行訪問,若訪問就會出現上出問題,因為此時Mysql只接受localhost,所以需要把bind-address = 127.0.0.1屏蔽掉。

然后重啟musql服務

sudo systemctl restart mysql.service

 

修改前通過 netstat -an | grep 3306 命令可以看到是本地地址:

tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN

 

修改將該bind-address屬性注釋掉再重啟mysql服務可以發現地址已經變了:

tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN

 

2)使用navicat遠程連接mysql時報錯ERROR 1130

  原因是無法給遠程連接的用戶權限問題。如下操作即可解決。

 

在本機用IP127.0.0.1登入mysql后,更改 “mysql” 數據庫里的 “user” 表里的 “host” 項,從”localhost”改稱'%'

 

mysql -u root -p

mysql>use mysql;

mysql>select 'host' from user where user='root';

mysql>update user set host = '%' where user ='root';

mysql>flush privileges;

mysql>select 'host' from user where user='root';

 

第一句是以權限用戶root登錄

第二句:選擇mysql

第三句:查看mysql庫中的user表的host值(即可進行連接訪問的主機/IP名稱)

第四句:修改host值(以通配符%的內容增加主機/IP地址),當然也可以直接增加IP地址

第五句:刷新MySQL的系統權限相關表

第六句:再重新查看user表時,有修改。

重起mysql服務即可完成。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM