参考文章为在root管理权限下的所以不用加----> sudo
1.
我并没有换源vi /etc/apt/sources.list.d/raspi.list 文件内容如下
deb http://archive.raspberrypi.org/debian/ buster main
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspberrypi.org/debian/ buster main
2.安装
image.png
apt-get install mysql-server
#没加sudo不够权限
sudo apt-get install mysql-server
#安装mysql提示可以安装mariadb-server-10.0
apt-get install mariadb-server-10.0
#安装mariadb-server-10.0
Mariadb与MySQL的区别:
Mariadb与MySQL的区别
3.测试
加上sudo打开成功
4.设置ROOT密码
后续步骤都是 参考 树莓派安装mysql
image.png
MariaDB [(none)]> use mysql;
MariaDB [mysql]> update user set plugin='mysql_native_password' where user='root';
MariaDB [mysql]> UPDATE user SET password=PASSWORD('root的密码') WHERE user='root';
MariaDB [mysql]> flush privileges;
MariaDB [mysql]> exit;
5.启动MySQL
sudo /etc/init.d/mysql restart
# mysql的其他操作 status、start、stop、restart
6.开启远程访问
sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf
#把下面bind-address注释掉如:
>>
# 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
>>
# 或者将127.0.0.1 这个值改为 0.0.0.0
sudo /etc/init.d/mysql restart
# 然后重启
7.设置远程账号
设置远程账号
mysql -u root -p
输入root密码
MariaDB [(none)]> use mysql;
MariaDB [mysql]> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root的密码' WITH GRANT OPTION;
#这个密码并没和上方密码一样 没报错 估计远程的账户和本地的独立的 或者是更新了密码? (下面9讲到解释)
MariaDB [mysql]> flush privileges;
然后就可以使用客户端进行连接了!
8.查看数据库
image.png
MariaDB [(none)]>show databases;
#查看数据库
MariaDB [(none)]> use mysql;
#选择一个数据库
MariaDB [mysql]> select host,user from user;
#查看当前有哪些用户
9. 新增用户
MariaDB [mysql]> grant all on *.* to 'zhang'@'%' identified by 'root';
#新增一个zhang用户,密码为root,可以在指定ip地址上远程连接。这里授予了全部权限,自己可以根据实际情况给权限;允许所有ip请使用%代替ip。
MariaDB [mysql]> update user set host='%' where user='root' and host='localhost';
#如果不想增加记录,只是想把某个已存在的用户(例如root)修改成允许远程主机访问
MariaDB [mysql]> flush privileges;
#刷新mysql系统权限表
MariaDB [mysql]> exit
#退出数据库
10.远程连接数据库
使用Navicat Premium工具
连接失败再查原因
估计没开3306端口
未能连接数据库时3306端口情况
netstat -talnp
#查看端口开放情况发现3306端口ip为127.0.0.1:3306即仅限此ip连接
第二天启动MySQL,使用Navicat Premium莫名其妙可以连接了
猜测开启远程连接后需要重启树莓派
仅做了如下测试参考 Linux下mysql服务存在,但是3306端口监听不存在,远程连接不上
但因为只做了1.问题描述步骤后感觉能用Navicat Premium连接上就试了下成功了就没试下去!!!
image.png
image.png
sudo /etc/init.d/mysql restart
#启动MySQL
mysql -u root -p
#测试本地登录MySQL 是可以已登录 怎么服务启动了
mysql -u root -h 127.0.0.1 -p
#测试通过127.0.0.1IP进入数据库 成功
netstat -talnp
#查看端口开放情况发现3306端口ip变为0.0.0.0:3306了
Navicat Premium连上数据库图
完成!!!!