1. 程式人生 > >連線虛擬機器centOS裡的mysql

連線虛擬機器centOS裡的mysql



<strong>方法一、</strong>

 以前用的都是windows下的mysql, 突然有需要在虛擬機器上部署下mysql, 虛擬機器上的系統是centOS,  發現系統沒自帶mysql, 還得裝.
1.  切換到root賬戶下, su - root
2. 安裝mysql, 預設裝到/usr/bin下,  yum install mysql
3. 啟動服務, service mysqld start
4. 登入mysql,   mysql
 
我一般是用Navicat連線mysql的, 發現連不上, 報錯:
ERROR 1130 (HY000): Host '192.168.6.1' is not allowed to connect to this MySQL s
erver
一想估計是許可權問題, 就授權吧,
grant select, update, delete, create on table_name.* to

[email protected] i
dentified by '123456';
然後重啟下mysql, 發現還是不行, 還是原來的錯, 苦思不得其解, 然後把虛擬機器的防火牆給關了,  執行setup, 在介面裡關閉防火牆, 發現仍然不行!
     仔細分析錯誤原因, 發現虛擬機器的地址是192.168.6.128, 為啥連線是192.168.6.1 not allow, 給虛擬機器也賦個許可權吧,  grant select, update, delete, create on PICARRO.* to
[email protected]
identified by '123456';  再一試, 成功了!!


方法二、

MySQL名字的來歷MySQL是一個小型關係型資料庫管理系統,我們在CentOS系統中如何安裝使用呢,而且讓MySQL支援遠端連線。下面我們就來學習方法。
CentOS系統安裝好MySQL後,預設情況下不支援使用者通過非本機連線上資料庫伺服器,下面是解決方法:
1、在控制檯執行 mysql -u root -p mysql,CentOS系統提示輸入資料庫root使用者的密碼,輸入完成後即進入mysql控制檯,這個命令的第一個mysql是執行命令,第二個mysql是系統資料名稱,不一樣的。
2、在mysql控制檯執行 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'MyPassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
3、在mysql控制檯執行命令中的 'root'@'%' 可以這樣理解: root是使用者名稱,%是主機名或IP地址,這裡的%代表任意主機或IP地址,你也可替換成任意其它使用者名稱或指定唯一的IP地址;'MyPassword'是給授權使用者指定的登入資料庫的密碼;另外需要說明一點的是我這裡的都是授權所有許可權,可以指定部分許可權,GRANT具體操作詳情見:http://dev.mysql.com/doc/refman/5.1/en/grant.html
4、不放心的話可以在mysql控制檯執行 select host, user from user; 檢查一下使用者表裡的內容
這樣,我們就完成了CentOS系統安裝MySQL支援遠端連線。