我实际上认为我可以做到这一点,直到我尝试。我在本地网络IP地址(192.168.1.4)中的一台PC上安装了MySQL服务器,现在我试图从同一网络中的另一台PC(192.168.1.5)访问它,但我无法访问:
C:\Users\DOMICO>mysql -u domico -h 192.168.1.4 -p
Enter password: **********
ERROR 1045 (28000): Access denied for user 'domico'@'DOMICO-PC' (using password:
YES)
令人惊讶的是,DOMICO-PC是我试图连接的PC。为什么它没有连接到给定的主机而是尝试连接到本地机器?
答案 0 :(得分:5)
您需要授予从remotehost
连接的权限mysql>在数据库上授予所有特权。*''用户名'@'%'用'密码'WITH GRANT OPTION识别;
答案 1 :(得分:0)
这是根据您的需要连接到目标主机。 t只是说明谁在联系。从哪里来。
USER @ DOMAIN
用户:您的用户正在运行mysql命令 domain:您要连接的系统的名称。
使用-u root通过服务器登录mysql,确保用户' domico'已创建且具有足够的访问权限。
答案 2 :(得分:0)
您需要具有适当的连接权限。在安装了数据库的计算机中,为您的用户提供适当的权限:
mysql>GRANT ALL PRIVILEGES ON *.* TO 'domico'@'DOMICO-PC';
mysql>FLUSH PRIVILEGES;
您可以在这里阅读更多内容: https://www.digitalocean.com/community/tutorials/how-to-create-a-new-user-and-grant-permissions-in-mysql
在这里: https://dev.mysql.com/doc/refman/5.1/en/privileges-provided.html
答案 3 :(得分:0)
由mysql服务器创建一个新用户 并赋予它权限,你可以通过命令和使用任何服务器,例如使用工作台
来实现答案 4 :(得分:0)
适用于所有用户和所有主机。
mysql -u root -p
GRANT ALL PRIVILEGES
ON *.*
TO '%'@'%'
IDENTIFIED BY 'password'
WITH GRANT OPTION;
FLUSH PRIVILEGES;
QUIT;