小巧嵌入式平臺(tái)“玩轉(zhuǎn)”大型的數(shù)據(jù)庫(kù)管理系統(tǒng)

原創(chuàng) 2020-03-07 13:59:00 數(shù)據(jù)庫(kù) 飛凌嵌入式 MySQL
MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由瑞典MySQLAB 公司開(kāi)發(fā),目前屬于Oracle旗下產(chǎn)品。MySQL是最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)之一,在WEB 應(yīng)用方面,MySQL是最好的RDBMS(Relational Database Management System,關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng))應(yīng)用軟件。


01 ubuntu服務(wù)端安裝配置


■ 網(wǎng)絡(luò)情況介紹

Ubuntu   ip:192.168.0.223  (myslq服務(wù)端)

開(kāi)發(fā)板    ip:192.168.0.232  (mysql客戶端)

■ Ubuntu服務(wù)器安裝mysql服務(wù)

1. sudo apt-get install mysql-server

2. sudo apt-get install mysql-client

3. sudo apt-get install libmysqlclient-dev

安裝過(guò)程中會(huì)提示設(shè)置密碼什么的,注意設(shè)置了不要忘了,安裝完成之后可以使用如下命令來(lái)檢查是否安裝成功。


02 檢查mysql的網(wǎng)絡(luò)服務(wù)是否開(kāi)啟

■ sudo netstat -tap | grep mysql

如果看到有 mysql的socket處于listen 狀態(tài)則表示安裝成功 

■ 本地登陸驗(yàn)證

密碼設(shè)置是 123456

mysql -h127.0.0.1 -uroot -p123456

-h表示遠(yuǎn)程主機(jī)的ip地址 -u表示選擇登陸的用戶名,-p表示登陸的用戶密碼,上面命令輸入之后會(huì)提示輸入密碼,此時(shí)輸入密碼就可以登錄到mysql。

?注意:-h與后邊的遠(yuǎn)程主機(jī)ip一定要緊接著,不能有空格;-u后邊的用戶名與緊接著,不能有空格,-p與后邊的用戶名要緊接著,不能有空格。

然后通過(guò) show databases;就可以查看當(dāng)前的數(shù)據(jù)庫(kù)。

mysql>show databases;

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

|Database        |

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

|information_schema |

|mysql          |

|performance_schema |

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

3rows in set (0.00 sec)

我們選擇mysql數(shù)據(jù)庫(kù)就行下一步操作,使用 use mysql命令,顯示當(dāng)前數(shù)據(jù)庫(kù)的表單: 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 設(shè)置允許遠(yuǎn)程訪問(wèn)mysql服務(wù)器

?  注釋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地址。但是,如果只是開(kāi)發(fā)用的數(shù)據(jù)庫(kù),為了方便起見(jiàn),還是推薦直接注釋掉。

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


sudo service mysql restart

增加允許遠(yuǎn)程訪問(wèn)的用戶或者允許現(xiàn)有用戶的遠(yuǎn)程訪問(wèn)。

給root授予在任意主機(jī)(%)訪問(wèn)任意數(shù)據(jù)庫(kù)的所有權(quán)限。SQL語(yǔ)句如下:

代碼如下:

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

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

代碼如下:

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

退出數(shù)據(jù)庫(kù)

代碼如下:

mysql>exit;

MySQLShell執(zhí)行完SQL后,需要退出到Bash執(zhí)行系統(tǒng)命令,需要執(zhí)行exit因?yàn)檫@個(gè)太常用也太簡(jiǎn)單。以下內(nèi)容就提示“退出”,不再重復(fù)列出這個(gè)命令。

重啟數(shù)據(jù)庫(kù)

完成上述所有步驟后,需要重啟一下數(shù)據(jù)庫(kù),才能讓修改的配置生效。執(zhí)行如下命令重啟數(shù)據(jù)庫(kù):

代碼如下:

>sudo service mysql restart


04 arm開(kāi)發(fā)板連接mysql服務(wù)器

下邊的命令全是在arm開(kāi)發(fā)板執(zhí)行輸入操作

?   確定網(wǎng)絡(luò)狀況良好

[root@sun8i ~]# ping 192.168.0.233

測(cè)試mysql服務(wù)連接正常

[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)

目前開(kāi)發(fā)板已經(jīng)可以查詢出ubuntu服務(wù)器上的mysql數(shù)據(jù),可以正常使用服務(wù)器的mysql服務(wù)開(kāi)發(fā)你的分布式應(yīng)用了。


流程注意點(diǎn)

1. ubuntu上的mysql服務(wù)修改網(wǎng)絡(luò)監(jiān)聽(tīng);

2. 數(shù)據(jù)庫(kù)中授權(quán)遠(yuǎn)程訪問(wèn);

3. 網(wǎng)絡(luò)設(shè)置的要和開(kāi)發(fā)板相同的網(wǎng)絡(luò)地址;

4. 設(shè)置好各項(xiàng)設(shè)置后一定要重啟一下服務(wù)器服務(wù),重啟下myslq服務(wù),開(kāi)發(fā)板網(wǎng)絡(luò)要互通。


■ 關(guān)注“飛凌嵌入式”公眾號(hào),不定期分享行業(yè)干貨及產(chǎn)品一線資料。

■ 直接微信回復(fù)產(chǎn)品平臺(tái),如“LS1012A”,即可快速獲取對(duì)應(yīng)產(chǎn)品信息。

■ 想要了解飛凌更多信息,歡迎與我們聯(lián)系:

銷售工程師:400-699-6866

國(guó)際業(yè)務(wù)部:0312-3102650-854

技術(shù)服務(wù)部:0312-3119192

方案定制類:17713286015 (杜工),18633238067(王工)


■ 實(shí)時(shí)技術(shù)支持:

AM 9:00—11:30,PM 13:30—17:00(周一至周五)


相關(guān)產(chǎn)品 >

  • OKMX6Q-C開(kāi)發(fā)板

    雙千兆飛凌嵌入式iMX6Q開(kāi)發(fā)板,板對(duì)板連接器,纖薄之際,次底板支持iMX6Q和iMX6DL核心板。i.MX6Q開(kāi)發(fā)板與i.MX6DL開(kāi)發(fā)板資源豐富,原理圖、PCB、軟件資源、硬件資源下載,技術(shù)支持等。歡迎選購(gòu)

    了解詳情
    OKMX6Q-C開(kāi)發(fā)板
  • OKMX8MP-C開(kāi)發(fā)板

    內(nèi)置NPU、ISP,AI計(jì)算能力高達(dá)2.3TOPS|飛凌嵌入式i.MX8MP 系列-NXP iMX8M Plus 開(kāi)發(fā)板 基于高性能低功耗工業(yè)級(jí)iMX8MP核心板設(shè)計(jì),支持多種多種高速通信接口。iMX8MP開(kāi)發(fā)板內(nèi)置NPU,AI計(jì)算能力2.3TOPS,支持4K,支持雙圖像信號(hào)處理器(ISP),是一款支持LinuxQT/android操作系統(tǒng)的iMX8MP開(kāi)發(fā)板。

    了解詳情
    OKMX8MP-C開(kāi)發(fā)板

推薦閱讀 換一批 換一批