飛凌乾貨|小巧嵌入式平臺使用大型的數據庫管理系統

MySQL 是一個 關係型數據庫管理系統 ,由瑞典 MySQL AB 公司開發,目前屬於 Oracle   旗下產品。 MySQL 是最流行的 關係型數據庫管理系統 之一,在 WEB 應用方面, MySQL 是最好的 RDBMS  (Relational Database Management System ,關係數據庫管理系統 ) 應用軟件。

1 ubuntu 服務端安裝配置

 

網絡情況介紹

Ubuntu   ip : 192.168. 0.223   ( myslq 服務端)

開發板    ip : 192.168.0.232    ( mysql 客戶端)

Ubuntu 服務器安裝 mysql 服務

1. sudo apt-get install mysql-server

2. sudo apt-get install mysql-client

3. sudo apt-get install libmysqlclient-dev

安裝過程中會提示設置密碼什麼的,注意設置了不要忘了, 安裝完成之後可以使用如下命令來檢查是否安裝成功 。

2 檢查 mysql 的網絡服務是否開啓

sudo netstat -tap | grep mysql

如果看到有 mysql 的 socket 處於 listen 狀態則表示安裝成功

2.3 本地登陸驗證

密碼設置是 123456

mysql -h127.0.0.1 -uroot - p 123456

 

-h 表示遠程主機的 ip地址   -u 表示選擇登陸的用戶名 , -p 表示登陸的用戶密碼 ,上面命令輸入之後會提示輸入密碼,此時輸入密碼就可以登錄到 mysql。

注意: -h 與後邊的遠程主機 ip 一定要緊接着,不能有空格; -u 後邊的用戶名與緊接着,不能有空格, -p 與後邊的用戶名要緊接着,不能有空格。

然後通過 show databases ; 就可以查看當前的數據庫。

 

mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| performance_schema |

+--------------------+

3 rows in set (0.00 sec)

 

我們選擇 mysql數據庫就行下一步操作,使用 use mysql   命令,顯示當前數據庫的表單: show tables  。

mysql> use mysql;

Database changed

mysql> show tables;

+---------------------------+

| Tables_in_mysql           |

+---------------------------+

| columns_priv              |

| db                        |

| event                     |

| func                      |

| general_log               |

| help_category             |

| help_keyword              |

| help_relation             |

| help_topic                |

| host                      |

| ndb_binlog_index          |

| plugin                    |

| proc                      |

| procs_priv                |

| proxies_priv              |

| servers                   |

| slow_log                  |

| tables_priv               |

| time_zone                 |

| time_zone_leap_second     |

| time_zone_name            |

| time_zone_transition      |

| time_zone_transition_type |

| user                      |

+---------------------------+

24 rows in set (0.00 sec)

 

3 設置允許遠程訪問 mysql 服務器

1. 註釋 bind-address = 127.0.0.1

sudo vi /etc/mysql/my.cnf # 註釋下面一行

 

將 bind-address = 127.0.0.1註釋掉(即在行首加#),如下:

代碼如下 :


# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
# bind-address          = 127.0.0.1

除了注視掉這句話之外,還可以把後面的 IP地址修改成允許連接的IP地址。但是,如果只是開發用的數據庫,爲了方便起見,還是推薦直接註釋掉。

從上面的註釋中,可以看出,舊版本的 MySQL(從一些資料上顯示是5.0及其以前的版本)上使用的是skip-networking。所以,善意提醒一下,使用舊版本的小夥伴請注意一下

 

sudo service mysql restart

 

2 .增加允許遠程訪問的用戶或者允許現有用戶的遠程訪問。

給 root授予在任意主機(%)訪問任意數據庫的所有權限。SQL語句如下:

代碼如下 :


mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;


如果需要指定訪問主機,可以把 %替換爲主機的IP或者主機名。另外,這種方法會在數據庫mysql的表user中,增加一條記錄。如果不想增加記錄,只是想把某個已存在的用戶(例如root)修改成允許遠程主機訪問,則可以使用如下SQL來完成:

代碼如下 :


update user set host='%' where user='root' and host='localhost';

3 .退出數據庫

代碼如下 :


mysql> exit;

在 MySQL Shell執行完SQL後,需要退出到Bash執行系統命令,需要執行exit。因爲這個太常用也太簡單。以下內容就提示“退出”,不再重複列出這個命令。

4 .重啓數據庫

完成上述所有步驟後,需要重啓一下數據庫,才能讓修改的配置生效。執行如下命令重啓數據庫:

代碼如下 :


>sudo service mysql restart

 

4  arm 開發板連接 mysql 服務器

下邊的命令全是在 arm 開發板執行輸入操作

2.4.1 確定網絡狀況良好

[root@sun8i ~]# ping 192.168.0.233

2.4.2 測試 mysql 服務連接正常

[root@sun8i ~]# mysql -h192.168.0.233 -uroot -p123456

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 37

Server version: 5.5.54-0ubuntu0.12.04.1 (Ubuntu)

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

This software comes with ABSOLUTELY NO WARRANTY. This is free software,

and you are welcome to modify and redistribute it under the GPL v2 license

 

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>      

mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| performance_schema |

+--------------------+

3 rows in set (0.00 sec)

mysql> use mysql;

mysql> select Host,User,Password  from user;                                                                                                                                                         

+-----------+------------------+-------------------------------------------+

| Host      | User             | Password                                  |

+-----------+------------------+-------------------------------------------+

| localhost | root             | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |

| ubuntu    | root             | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |

| 127.0.0.1 | root             | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |

| ::1       | root             | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |

| localhost | debian-sys-maint | *BE992A329E738F241ACC9248FC1F4FF734A52FCD |

| %         | root             | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |

+-----------+------------------+-------------------------------------------+

6 rows in set (0.00 sec)

目前開發板已經可以查詢出 ubuntu 服務器上的 mysql 數據了。

現在就可以正常使用服務器的 mysql 服務開發你的分佈式應用了。

 

總結:有幾個注意點,第一個, ubuntu 上的 mysql 服務修改網絡監聽,第二個,數據庫中授權遠程訪問,第三個,網絡設置的要和開發板相同的網絡地址,第四點,設置好各項設置後一定要重啓一下服務器服務,重啓下 myslq 服務,開發板網絡要互通。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章