1. 程式人生 > >ubuntu下MySQL的安裝及遠端連線配置

ubuntu下MySQL的安裝及遠端連線配置

1.命令視窗中輸入sudo apt-get install mysql-server mysql-client 即可(配置檔案位置:/etc/mysql/my.cnf

啟動檔案位置:/etc/init.d/mysql

2.安裝期間會提示你輸入ROOT賬號的密碼。

3.安裝完成後,就可以利用命令mysql -u root -p來訪問資料庫了。

4.設定遠端連線訪問,安裝完成後,MySQL的配置檔案位於:/etc/mysql/my.cnf

5.vim /etc/mysql/my.cnf找到

    bind-address           = 127.0.0.1

    這行,註釋掉(如下)

   #bind-address           = 127.0.0.1

    或者改為

bind-address           = 0.0.0.0

    允許任意IP訪問,或者自己指定一個IP地址。

6.然後重啟 MySQL

sudo /etc/init.d/mysql restart

7.授權使用者能進行遠端連線

grant all privileges on *.* to [email protected]"%" identified by "password" with grant option;

   flush privileges;

   第一行命令解釋如下,*.*:第一個*代表資料庫名;第二個*代表表名。這裡的意思是所有資料庫裡的所有表都授權給使用者。

                                 root:授予root賬號。

                                 “%”:表示授權的使用者IP可以指定,這裡代表任意的IP地址都能訪問MySQL資料庫。

                                 “password”:分配賬號對應的密碼。

8.通過mysql客戶端連線到遠端的MySQL資料庫

    在自己本地mysql客戶端中輸入:

   mysql -h ip -u root -p;

   其中ip是你訪問資料庫所在伺服器的IP地址

9.亂碼修復

   sudo gedit /etc/mysql/my.cnf

開啟之後在

   [client]
   default-character-set=utf8   
     

   注意:上面的中間
default-character-set=utf8 程式碼是加入,不是修改,下面同理!
   同樣還有一個地方!
   [mysqld]
   default-character-set=utf8
    init_connect='SET NAMES utf8'

   同樣這兩行程式碼是加入!
    這個是儲存檔案!

執行:

停止資料庫服務:sudo /etc/init.d/mysql stop
重新啟動:sudo /etc/init.d/mysql start
進入資料庫:
mysql -uroot -p(你的密碼)
檢視編碼:
show variables like '%chara%';

create table user(
    -> id int auto_increment,
    -> name varchar(30),
    -> primary key(id)
    -> )default charset=utf8;

 注意建表時,default charset=utf8這個設定不能少。

PS:今天遇到很奇怪的問題,遠端連線Mysql伺服器時,在本地客戶端利用命令列方式插入中文出現亂碼(我伺服器的編碼是utf8),把本地客戶端的編碼設定成gbk即可。