[樹莓] 架設MariaDB 資料庫

樹莓在OS ubuntu mate 16.04上,mySQL-server安裝是沒問題的。


不過在樹莓的官方OS上己經不支援了。連小海豚mysql-workbench都無法安裝


因此找替代方案來解決,就是安裝MariaDB.


以下介紹安裝與使用


1. 安裝 MariaDB

安裝指令:

sudo apt-get install mariadb-server


安裝完後先設定ROOT帳密跟一些基本參數,下指令:

sudo mysql_secure_installation

輸入上面那行指令以後,會要你設定root的密碼,別忘了它,它是等一下要拿來登入MariaDB的。

執行過程中會有些提示,只需按照提示設置並確保MySQL安裝的安全即可。

  • 依照提示輸入 root的密碼 Change the root password? [Y/n] 
  • 移除匿名使用者  Remove anonymous users? [Y/n]
  • 不允許 root遠端登入 Disallow root login remotely? [Y/n] 
  • 移除 test 資料庫及存取權 Remove test database and access to it? [Y/n]
  • 重新載入權限的資料表  Reload privilege tables now? [Y/n] 

PS: 以上來自參考[1],因為幾乎都一樣就不再另外解釋與翻譯,若作者不希望被引用請留言給我。


2. 設定可從外部登入並管理的帳號

更改MariaDB的設定檔[3],輸入:

sudo gedit /etc/mysql/mariadb.conf.d/50-server.cnf

找到

bind-address = 127.0.0.1
改成
bind-address = 0.0.0.0
這樣才可以從外部連進資料庫。


登入MariaDB指令:

sudo mysql -u root -p

並輸入自己的ROOT密碼,就可以用ROOT的權限管理整個資料庫了。


建立一組帳號(範例帳號:Nathan,密碼:123456),可由外部登入MariaDB,並管理其資料庫:

MariaDB [(none)]> CREATE USER 'Nathan' IDENTIFIED BY '123456';

Query OK, 0 rows affected (0.001 sec)


MariaDB [(none)]> GRANT ALL ON *.* TO 'Nathan' IDENTIFIED BY '123456';

Query OK, 0 rows affected (0.001 sec)


MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'Nathan';

Query OK, 0 rows affected (0.001 sec)


建立一組帳號密碼(同上,且IP為172.16.12.15),並只能從特定IP登入MariaDB,並管理其資料庫:

MariaDB [(none)]> CREATE USER 'Nathan'@'172.16.12.15' IDENTIFIED BY 'Nathan';

Query OK, 0 rows affected (0.001 sec)


MariaDB [(none)]> GRANT ALL ON *.* TO 'Nathan'@'172.16.12.15' IDENTIFIED BY 'Nathan';

Query OK, 0 rows affected (0.001 sec)


MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'Nathan'@'172.16.12.15';

Query OK, 0 rows affected (0.001 sec)


打開終端機輸入:

sudo netstat -anp | grep 3306

可以看到回傳目前3306的PORT是監聽mysqld的,代表我們從外部連進來PORT記得要設定成3306

tcp       0      0 0.0.0.0:3306          0.0.0.0:*        LISTEN         3213/mysqld


輸入以下指令重開MariaDB,讓設定重跑:

sudo systemctl restart mariadb.service


3. 在樹莓上安裝SQL的GUI (取代常用的mySQL-workbench)

sudo apt-get install emma

安裝後,可以打開這個軟體連接本機或其他主機的SQL,方便下指令管理兼觀看用。


也可以看裝php-mysql,不過我個人沒使用過。給大家參考看看。

sudo apt-get install php-mysql


4. 參考 references

[1] https://atceiling.blogspot.com/2020/03/raspberry-pi-61mysqlmariadb.html

[2] https://pimylifeup.com/raspberry-pi-mysql/

[3] https://websiteforstudents.com/configure-remote-access-mysql-mariadb-databases/


留言

熱門文章