1、mysql登录
mysql -u root -p
输入密码
2、选择数据库
use mysql;
3、查看用户
select host,user,password from user;
4、创建新的用户
create user 'test'@'localhost' identified by '123456';
其中 ‘test’ 是用户名,localhost是代表可访问的用户id,设置localhost则是代表只能本机访问,%则是所有可以访问,开发的时候可以设置所有ip可以访问,生产环境设置 web服务器ip,如果同服务器则设置localhost
5、分配用户权限
grant all privileges on `testdb`.* to 'test'@'%' identified by '123456';
privileges on 后面接的是权限所对应的库或者表。 ‘testdb’.*表示对‘testdb’库所有表都有操作权限, 'test'@'localhost' identified by '123456'是需要授权的用户
grant 后面可以接 select 、 update 、delete、等操作,all privileges则表示所有操作
6、刷新权限
flush privileges;
ps:如果设置好了还是出现了can‘t connect to mysql server on '服务器地址' 的报错
检查mysql配置是否限制了只能本机登录
vim /etc/mysql/my.cnf
使用#屏蔽下面的代码
#bind-address = 127.0.0.1
如果版本比较老还需要屏蔽下面这个
#skip-networking
然后重启mysql
如果还是有问题
则应该是防火墙的问题
vim /etc/sysconfig/iptables
查看是否开放了3306的接口
如果没有则加入
-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
或者复制文件里面一行 修改端口为3306就可以了
或者是firewalld防火墙,需要开放3306端口