小巧嵌入式平臺“玩轉”大型的數據庫管理系統
■ 網絡情況介紹
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
安裝過程中會提示設置密碼什么的,注意設置了不要忘了,安裝完成之后可以使用如下命令來檢查是否安裝成功。
■ 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)
? 注釋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
下邊的命令全是在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服務,開發板網絡要互通。
■ 關注“飛凌嵌入式”公眾號,不定期分享行業干貨及產品一線資料。
■ 直接微信回復產品平臺,如“LS1012A”,即可快速獲取對應產品信息。
■ 想要了解飛凌更多信息,歡迎與我們聯系:
銷售工程師:400-699-6866
國際業務部:0312-3102650-854
技術服務部:0312-3119192
方案定制類:17713286015 (杜工),18633238067(王工)
■ 實時技術支持:
AM 9:00—11:30,PM 13:30—17:00(周一至周五)
相關產品 >
-
OKMX6Q-C開發板
雙千兆飛凌嵌入式iMX6Q開發板,板對板連接器,纖薄之際,次底板支持iMX6Q和iMX6DL核心板。i.MX6Q開發板與i.MX6DL開發板資源豐富,原理圖、PCB、軟件資源、硬件資源下載,技術支持等。歡迎選購
了解詳情 -
OKMX8MP-C開發板
內置NPU、ISP,AI計算能力高達2.3TOPS|飛凌嵌入式i.MX8MP 系列-NXP iMX8M Plus 開發板 基于高性能低功耗工業級iMX8MP核心板設計,支持多種多種高速通信接口。iMX8MP開發板內置NPU,AI計算能力2.3TOPS,支持4K,支持雙圖像信號處理器(ISP),是一款支持LinuxQT/android操作系統的iMX8MP開發板。
了解詳情