[樹莓] 架設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
找到
登入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)
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/
留言
張貼留言