树莓派: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';
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章