首先用root登录添加用户:
insert into mysql.user(Host,User,Password) values('localhost','phplamp',password('1234')); flush privileges;
添加权限
grant all privileges on phplampDB.* to phplamp@localhost identified by '1234'; flush privileges;
添加单个权限
grant select,update on phplampDB.* to phplamp@localhost identified by '1234'; flush privileges;
1、改表法
可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
mysql -u root -p mysql>use mysql; mysql>update user set host = '%' where user = 'root'; mysql>select host, user from user;
2、授权法
在安装mysql的机器上运行:
d:\mysql\bin\>mysql -h localhost -u root
//这样应该可以进入MySQL服务器
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION
//赋予任何主机访问数据的权限
例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
mysql>FLUSH PRIVILEGES
//修改生效
mysql>EXIT
退出MySQL服务器,这样就可以在其它任何的主机上以root身份登录
修改文件:
修改mysql配置文件,打开终端执行下面命令
vi /etc/mysql/mysql.conf.d/mysqld.cnf
然后找到下面这行:
bind-address = 127.0.0.1
把它注释掉,或者替换ip为你要远程访问的ip.
然后应该就可以连接了,如果还不行就检查一下3306端口和防火墙.