raspberry pi(树莓派)上安装和使用MySQL,并通过Navicat远程访问配置脱坑记录
材料:
树莓派 3B 系统版本:2017-09-07-raspbian-stretch.img
Win 7电脑
1、在安装之前首先对树莓派更新源文件
$ sudo apt-get update
$ sudo apt-get upgrade
2.、安装MySQL
使用管理员权限运行apt-get获取最新的MySQL:
$ sudo apt-get install mysql-server
安装过程中需要输入root管理员的密码,该密码之后用于访问数据库系统
3、测试MySQL
通过以下命令运行MySQL的命令提示系统,并输入在安装过程中设置的密码:
$ sudo mysql -u root -p
而笔者就遇到一个情况,在安装过程,本来以为中间会提示输入密码,结果一口气就安装完了,完全不知道怎么登陆,密码也不知道,还好有个博主遇到了一样的问题,借鉴了他的方法解决了这个问题
- 以空密码登陆
$ sudo mysql -u root
- 能登陆当然肯定是要修改密码了
# 数据库中使用 # 连接数据库 use mysql; # 修改密码为123456 set password=PASSWORD('123456') # 刷新 flush privileges; # 退出 exit; 或者 \q;
4、Navicat for MySQL 远程连接(Win7)
本以为上面做的那些努力就可以访问MySQL,结果各种连接失败后才知道树莓派 MySQL 默认只监听本地ip访问,如果需要远程IP访问还需要修改系统配置文件,但查了很多论坛发现都是
- 修改 /etc/mysql/my.cnf
$ vi /etc/mysql/my.cnf
- 或者直接Logout(注销) 再使用 root 登陆再找到 /etc/mysql/my.cnf文件打开并修改
找到 bind-address = 127.0.0.1 把 127.0.0.1 改成 0.0.0.0 就可以远程访问了。
而笔者发现这个版本的树莓派系统(2017-09-07-raspbian-stretch.img )在/etc/mysql/my.cnf 中并没有这行代码,或许是新版本的文件改版的问题(或许也可能是与笔者的缘分问题)
最终/etc/mysql目录下都找了一遍,终于发现在mariadb.conf.d目录下的 50-server.cnf 文件找到了bind-address = 127.0.0.1 并把它改成0.0.0.0
终于解决了远程访问树莓派mysql默认只监听本地ip访问的问题。
Navicat for MySQL软件配置如下:
IP:树莓派的IP地址
端口号:3306
用户名:MySQL的用户名
密码:MySQL的设置的密码