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

原創 2020-04-10 17:40:00 MySQL 數據庫管理系統 ubuntu 飛凌

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

1 ubuntu服務端安裝配置

網絡情況介紹

Ubuntu   ip192.168.0.223  myslq服務端)

開發板    ip192.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服務,開發板網絡要互通。


相關產品 >

  • FETT507-C核心板

    推薦T507,全志T507核心板采用工業級處理器設計開發,提供T507規格書,T507各類設計資料。FETT507-C核心板集成全志T507四核工業級處理器設計開發,Cortex-A53架構,主頻1.5GHz,集成G31 GPU,內存2GB DDR3L,存儲8GB eMMC。整板工業級運行溫寬,支持絕大部分當前流行的視頻及圖片格式解碼,具有穩定可靠的工業級產品性能、低功耗以及豐富的用戶接口等優勢,搭載Linux、Android、Ubuntu*操作系統,適用于車載電子、電力、醫療、工業控制、物聯網、智能終端等領域 了解詳情
    FETT507-C核心板
  • FET3568-C核心板

    RK3568性能強而穩 國產芯|飛凌嵌入式RK3568系列核心板,采用瑞芯微國產高性能AI處理器RK3568設計生產,RK3568兼具CPU、GPU、NPU、VPU于一身,RK3568 性能、性價比在同類產品中具有較高優勢,RK3568處理器是一款定位中高端的通用型SoC, 飛凌RK3568核心板主要面向工業互聯網、HMI、NVR存儲、車載中控、工業網關等領域。目前RK3568系列已經批量穩定出貨

    了解詳情
    FET3568-C核心板

推薦閱讀 換一批 換一批