我不小心做了一些愚蠢的事情,并在mysql控制台中输入了以下内容:
mysql> grant all on myDB.* to root@'%' identified by 'root';
..。并且数据库配置对远程登录开放。现在,我需要删除此授权,但不希望意外地撤销我的root用户的所有特权,并有效地将我自己锁定在db admin之外。我该怎么办?
我和一个团队成员被难住了,因为向远程用户授予特权的命令失败了,但没有错误。使用CREATE user成功地将新用户添加到mysql.user,但是GRANT特权和FLUSH特权不会影响grants表。这两个命令都应该显示“查询OK。0行受影响”,但它们确实是这样做的。但是SHOW GRANTS不会显示新的权限,我们也不能从指定的远程ip使用该用户名登录。有人能解释一下下面的行为吗?
mysql> SELECT CURRENT_USER(); ///I'm definitely in as root user
+----------------+
| CURRENT_USE
我无法通过TCP/IP连接到MySQL服务器。
服务器安装在Debian中,并且有一个PostGreSQL服务器同时运行。(工作正常,并且有tcp/ip连接)
但是,每次我试图远程连接到MYSQL服务器时,都会得到以下信息:
Connecting to MySQL server 172.29.85.188...
Access denied for user 'root'@'172.29.70.25' (using password: YES)
我是不是漏掉了什么?如果我运行到服务器的SSH连接,我可以很好地登录。我还更改了mysql.conf文件以删除BLIND
我正在windows上工作,并且与另一台机器有一个远程桌面连接。我正试图通过安装在我的计算机上的mysql工作台连接到远程计算机上运行的MySql。
当我指定要连接到mysql的详细信息时,即ip-A.B.C.D端口-3306 username=root password=
但每次我说错话的时候-
Your connection attempt to connect to user='root'failed from your host to server at a.b.c.d:3306
我可以在另一台机器上连接到mysql吗?
你好,我是在Centos上安装了nginx + mysql +php。我正在尝试允许从另一个VPS远程访问这台机器上的数据库。
我尝试了以下步骤。
修改/etc/my.cnf文件,然后在mysqld块中添加行bind-address = *
使用命令/etc/init.d/mysqld restart保存并重新启动mysql服务
登录mysql
键入use social命令并尝试运行GRANT ALL PRIVILEGES ON *.* TO root@'1.2.3.4' IDENTIFIED BY 'pass';命令,其中1.2.3.4是我希望
抱歉,我知道这是个常见的话题,但是...
我已经通过EzyPHP在Windows7 x64上安装了本地mysql服务器,但无法登录,除非使用--skip-grant-tables选项。
登录尝试会生成错误:不允许主机'localhost‘连接到此MySQL服务器。
因此,我尝试使用--skip-grant-tables选项重新启动。这使我能够以root用户身份登录,甚至可以更改root用户密码。所以密码没问题。而不是运行grant语句。这就是发生的事情:
GRANT ALL on *.* to 'root'@'localhost' identified
我忘了我的根密码..。然后我停止mysql服务器并使用skip-grant-tables;重新启动它,我通过以下方式更改了根密码
mysql>update mysql.user set password='12345' where user='root';
mysql> select user,password from mysql.user;
我得到的是::
+------+-------------------------------------------+
| user | password
所以我只是像往常一样在一个新服务器上安装了mariadb,但是我使用的设置根密码和允许远程根登录的命令似乎都没有了,而googling对我帮助不大。
mysql -u root -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION; FLUSH PRIVILEGES;"
mysql -u root -e "use mysql;update user set authentication_strin
我在执行命令时遇到问题
grant select, insert, delete, update on dbname.* to username identified by 'password';
从远程连接到我的服务器。它的响应是
ERROR 1044 (42000): Access denied for user 'root'@'xxx.xxx.x.xx1' to database 'dbname'。
我的服务器的地址是xxx.xxx.x.xx1,我的远程机器的地址是xxx.xxx.x.xx2。
我从远程机器使用以下命令登录到
使用'root'@10.0.1.15'登录MySQL时
我试图向用户授予SELECT, INSERT, UPDATE权限,但从MySQL获得此错误
Error Code: 1044. Access denied for user 'root'@'10.%' to database 'abc'
这是我用来授权的查询
GRANT SELECT, INSERT, UPDATE ON abc.* TO 'myUser'@'10.%';
因为当我为'root'@'10.%‘执行
我可以远程访问root用户。
创建用户的语句如下:
CREATE USER 'auser'@'%' IDENTIFIED BY 'auser';
GRANT ALL ON `MyDB`.* TO 'auser'@'%';
flush privileges;
这个auser帐户不能远程登录,原因是什么?
PS。使用navicat登录数据库提示符:2013 - Lost connection to MySQL server during query
我在我的系统中使用MySQL查询浏览器,输入远程服务器的IP地址并登录。我尝试创建一个存储过程,并计划每两分钟调用一次事件。我收到了错误“拒绝用户‘root’@‘%’的访问”。为了解决这个错误,我尝试了下面的查询。
GRANT ALL PRIVILEGES ON database.* TO 'root'@'%' IDENTIFIED BY 'PWD';
FLUSH PRIVILEGES;
SHOW GRANTS FOR 'root'@'%
select * from mysql.user where User=
我正在尝试使用docker容器来处理mariadb和node.js图像。容器将使用/home/mysql中的现有数据库。然而,当容器启动时,我在node.js中得到了这个“连接失败”的错误:
Error: ER_HOST_NOT_PRIVILEGED:
Host '172.18.0.5' is not allowed to connect to this MariaDB server
这是我的docker-compose.yml:
version: '3'
services:
mariadb:
image: mariadb
restart:
通过mysql管理创建用户,但无法登录mysql命令行
以下是在线建议,作为root发布的
grant all on *.* to new_user;
它起了作用,但从安全角度讲,却是一团糟,所以发布了。
revoke all on *.* from new_user;
现在new_user仍然可以连接,但是安全性是正常的,就像mysql管理中设置的那样。
对我来说这完全是胡说八道。到底是怎么回事,你是如何真正启用登录的?
这似乎是一个MySQL管理员问题(谢谢@marco)。如果在mysql命令行中发出相同的授权,则用户可以登录;但授予是在Administrator中发出的,则用户无法登录。
我试图远程访问MySQL,因为MySQL只在本地工作。
我遵循了这个指南http://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html
我在教程中使用了这样的命令:
mysql> update user set Host='202.54.10.20' where user='root';
我想这把当地的mysql搞砸了。
现在我无法登录:
$ mysql -u root -p
我知道这个错误:
拒绝用户'root'@'