Java作业要求用JDBC连接数据库,想着直接用服务器上的MySQL,省的用Access还要交数据库文件的麻烦。万万没想到的是居然花了一下午来搞定数据库连接的问题……心态炸裂……
1. 开放MySQL的访问权限
用root账户登录,进入mysql数据库.
更改root用户:
UPDATE user SET host = '%' WHERE host = '127.0.0.1'
这样一来所有IP地址均可以作为root用户,可以使用SELECT host,user FROM user查询当前用户表。
对所有root用户授权:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root用户的密码' WITH GRANT OPTION;
也可以对指定IP的用户授权:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'指定的IP' IDENTIFIED BY 'root用户的密码' WITH GRANT OPTION;
重载授权表:
FLUSH PRIVILEGES;
这样在MySQL用户表里的授权设置就做完啦
2. 修改my.cnf
这一步要解决的是服务器上监听3306端口的IP问题。
netstat -anpt|grep 3306
可以发现此时默认监听是127.0.0.1::3306,我们要将他修改成服务器的IP地址(注意是内网IP!)
在/etc/mysql目录下找到my.cnf文件,vim打开它
可以找到一行bind-address = 127.0.0.1
修改这个IP地址为你服务器的内网IP地址,再重启mysql服务,就可以啦~(我就是忘了重启,又折腾了好久……)
这里可能遇到一个问题,my.cnf是一个只读文件,vim的时候会提示不能修改,解决方案如下:
编辑完后,输入:w !sudo tee %,回车后输入L,再回车,就回到了编辑器界面,:q退出即可~