2、设置用户、密码让指定的ip访问:mysql -u root -p 或安装的快捷方式进入:mysql command line client,使用grant命令: grant 权限1,权限2,权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接口令'; 例子: mysqlgrant select,insert,upda
2、设置用户、密码让指定的ip访问:mysql -u root -p 或安装的快捷方式进入:mysql command line client,使用grant命令:
grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接口令';
例子:
mysql>grant select,insert,update,delete,create,drop on mydb.mytable to lzpddd@192.168.1.88 identified by 'mypassword';
给来自192.168.1.88的用户lzpddd分配可对数据库 mydb的mytable表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为'mypassword';
mysql>grant all privileges on *.* to lzpddd@192.168.1.88 identified by 'mypassword';
给来自192.168.1.88的用户lzpddd分配可对所有数据库的所有表进行所有操作的权限限,并设定口令为'mypassword';
mysql>grant all privileges on *.* to lzpddd@'%' identified by 'mypassword';
给来自任何ip地址的用户lzpddd分配可对所有数据库的所有表进行所有操作的权限限,并设定口令为'mypassword';
3、关闭服务器端防火墙或者开放3306端口(很重要);
4、客户端连接:
进入命令行,windows cmd,连接:
mysql -u 用户名 -p密码 -h 服务器ip地址 -p 服务器端mysql端口号 -d 数据库名
注意:
(1)服务器端口标志-p一定要大些以区别于用户-p,如果直接连接数据库标志-d也要大写;
(2)如果要直接输入密码-p后面不能留有空格如-pmypassword;
(3)命令结束段没有';'分号。
例子:
mysql -u lzpddd -pmypassword -h 192.168.1.88 -p 3306 -d mydb
1.在web服务器a配置好web服务。假设web服务器的ip为:192.192.192.192
2.在数据库服务器b安装好mysql服务。
3.现在新版的mysql一般默认都不允许远程连接的。需要建立远程连接账号才可以。
以命令行方式使用root账号进入mysql。
mysql -uroot -ppass
选择进入mysql数据库
use `mysql`;
查看所有存在的账号和地址。
select `host`,`user` from `user`;
比如我的就是:
+-----------+------+
| host | user |
+-----------+------+
| localhost | |
| localhost | pma |
| localhost | root |
+-----------+------+
3 rows in set (0.00 sec)
也就是说,存在三个只允许本地连接的(localhost)账号,分别为 root、pma、空用户。
现在决定让root具有上面那个web服务器a的远程链接的权限,那么就这样。
update `user` set `host`='192.192.192.192' where `user`='root' limit 1;
这样192.192.192.192这台web服务器就可以远程连接到这个数据库服务器了。假如你想让任何远程机器都可以连接这个数据库,就将192.192.192.192换为%。不过不建议这样做!