樹莓派:MySQL安裝、遠程訪問配置

樹莓派:MySQL安裝、遠程訪問配置

1、安裝MySQL

#安裝MySQL
sudo apt-get install mariadb-server mariadb-client
sudo apt-get install libmariadbclient-dev

2、修改密碼及訪問方式

#初始化MySQL,之後根據需求配置。
#【注】配置中會彈出是否開啓遠程
sudo mysql_secure_installation
#此時系統會詢問你:Enter current password for root (enter for none): ,按回車(enter)鍵,因爲第一次登陸是沒有密碼的。
#然後會詢問你: Set root password? —— 按 y ,進行root帳號的密碼設置
#此時,會提示 New password ,在此輸入你的MySQL密碼,請牢記這個密碼,輸入完成按回車,會提示re-enter new password此時再重複輸入密碼,回車即可。
#然後,詢問你 Remove anonymous users ,按 y 。
#然後,詢問你 Disallow root login remotely ,按 y 。
#然後,詢問你 Remove test database and access to it ,按 y 。
#然後,詢問你 Reload privilege tables now ,按 y 。
#最後,您將看到消息 All done! 和 Thanks for using MariaDB! 。表示已經設置完成了。

#使用root權限打開數據庫
sudo mysql
#更新密碼及驗證方式,使其可通過賬號密碼登錄
update mysql.user set authentication_string=PASSWORD('0031'),plugin='mysql_native_password' where user='root';
#刷新特權表
flush privileges;
#退出
exit
#重啓MySQL
sudo service mysql restart
#使用如下指令,然後使用密碼登錄
mysql -u root -p

3、添加數據庫及授權

#使用MySQL命令,創建數據庫。
#例如這裏創建一個名爲sworlddb的數據庫:
create database sworlddb;
#注意:結束時需要分號
#創建數據庫的命令輸入成功後,應該會看到
#Query OK,表示創建成功。

#創建MySQL用戶
#創建該用戶用於分配剛纔創建的數據庫,
#例如創建一個名爲sworld的用戶
create user 'sworld'@'localhost' IDENTIFIED BY 'YOURPASSWORD';
#向用戶授權數據庫
#向用戶sworld授予sworlddb數據庫權限。
GRANT ALL PRIVILEGES ON sworlddb.* TO 'sworld'@'localhost' IDENTIFIED BY 'YOURPASSWORD';
#注意:您需要在IDENTIFIED BY之後輸入你設置的密碼。

#刷新數據庫權限
#要使剛纔的更改生效,需要刷新數據庫權限,
FLUSH PRIVILEGES;

4、允許遠程訪問

#樹莓派需要修改配置文件,進入mysql配置文件夾
cd /etc/mysql
#以mariadb10.0爲例,該版本數據庫配置問文件爲
#/etc/mysql/mariadb.conf.d/50-erver.cnf
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
#【注】註釋掉: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
#也可以把port取消註釋,默認爲3306
#給root授予在任意主機(%)訪問任意數據庫的所有權限
grant all privileges on *.* to 'root'@'%' identified by '0031' with grant option;
#刷新特權表
flush privileges;
#如果需要指定訪問主機,可以把%替換爲主機的IP或者主機名。另外,這種方法會在數據庫mysql的表user中,增加一條記錄。如果不想增加記錄,只是想把某個已存在的用戶(例如root)修改成允許遠程主機訪問,則可以使用如下SQL來完成:
update user set host='%' where user='root' and host='localhost';
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章