MySQL添加用户进行远程访问

我创建的用户user@'%'使用password 'password。但是我无法连接:


mysql_connect('localhost:3306', 'user', 'password');

创建user时user@'localhost',我可以连接。为什么?'%'不是来自任何主机吗?


RISEBY
浏览 644回答 3
3回答

潇湘沐

请按照说明进行操作(Windows中不需要步骤1至3):找到mysql配置进行编辑:/etc/mysql/my.cnf(MySQL 5.5)/etc/mysql/conf.d/mysql.cnf(MySQL 5.6+)bind-address=127.0.0.1在配置文件更改中查找bind-address=0.0.0.0(您可以将绑定地址设置为接口ip之一,或者像我一样使用0.0.0.0)重新启动在控制台上运行的mysql服务: service restart mysql创建一个具有安全密码的用户以进行远程连接。为此,请在mysql中执行以下命令(如果您是Linux用户,则要进入mysql控制台运行mysql,并且您为root run设置了密码mysql -p):GRANT ALL PRIVILEGES  ON *.* TO 'remote'@'%'  IDENTIFIED BY 'safe_password'  WITH GRANT OPTION;`现在,您应该拥有一个名称为user和的用户,safe_password并且具有远程连接功能。

蝴蝶刀刀

用户是什么DB?看这个例子mysql> create database databasename;Query OK, 1 row affected (0.00 sec)mysql> grant all on databasename.* to cmsuser@localhost identified by 'password';Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)因此,请问您“%”运算符是指网络中的所有计算机。就像aspesa所示,我也确定您必须创建或更新用户。寻找您所有的mysql用户:SELECT user,password,host FROM user;设置好用户后,您应该可以像这样进行连接:mysql -h localhost -u gmeier -p希望能帮助到你
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

MySQL