小巧嵌入式平臺“玩轉”大型的數據庫管理系統

原文鏈接:http://forlinx.com/zixun/344.htm

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

01、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

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

02、檢查mysql的網絡服務是否開啓
■ sudo netstat -tap | grep mysql

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

■ 本地登陸驗證

密碼設置是 123456

mysql -h127.0.0.1 -uroot -p123456

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

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

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

mysql>show databases;

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

|Database        |

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

|information_schema |

|mysql          |

|performance_schema |

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

3rows 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               |

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

24rows in set (0.00 sec)

03
設置允許遠程訪問mysql服務器
❶ 註釋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

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

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

代碼如下:

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

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

代碼如下:

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

❸ 退出數據庫

代碼如下:

mysql>exit;

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

❹ 重啓數據庫

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

代碼如下:

sudo service mysql restart

04
arm開發板連接mysql服務器
下邊的命令全是在arm開發板執行輸入操作

❶ 確定網絡狀況良好

[root@sun8i ~]# ping 192.168.0.233

❷ 測試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, Oracleand/or its affiliates. All rights reserved.

This software comes with ABSOLUTELYNO WARRANTY. This is free software,

and you are welcome to modify andredistribute 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服務開發你的分佈式應用了。

流程注意點

  1. ubuntu上的mysql服務修改網絡監聽;

  2. 數據庫中授權遠程訪問;

  3. 網絡設置的要和開發板相同的網絡地址;

  4. 設置好各項設置後一定要重啓一下服務器服務,重啓下myslq服務,開發板網絡要互通。

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