我通过以下方式进入了Bash中的mysql:
mysql -u根-p
然后,我尝试创建一个仅限于localhost的新用户,下面的命令失败了:
create user "${domain}"@"localhost" identified by -p;
为什么命令失败了?
编辑:我的目标是在命令执行中创建(或粘贴)用户的密码(这就是为什么我没有使用-p。代码是更大的脚本文件的一部分,我不想公开该文件中的任何密码。
我希望将select特权授予每个主机的用户,但是如果出现错误,则不允许创建用户
mysql>GRANT SELECT ON *.* TO 'alice'@'%' WITH GRANT OPTION;
错误1410 (42000):不允许使用GRANT创建用户
我不想创建新用户,因为我使用命令create
我试图创建一个新用户,但授予命令也失败了。
我正在尝试从命令行执行特定的mysql命令。当我这样做时,它失败了,但如果我在mysql交互式中执行完全相同的命令,它就可以工作。
以下是失败的命令行版本:
$ mysql -uscott -p -e "GRANT ALL PRIVILEGES ON `myuser\_%`.* TO 'myuser'@'localhost';"
给出的错误是:
ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds
问题:
在mysql中设置用户时,我遇到了登录问题。老用户可以按预期登录,对于新创建的用户,我无法登录并获得错误消息。
执行SQL:
CREATE USER 'monty'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON somedb.* TO 'monty'@'%';
FLUSH PRIVILEGES;
期望:我现在可以从我的客户端代码中以用户monty的身份登录(已经存在的用户可以使用什么)。
错误:登录失败,我的客户端代码中有以下错误消息:
SQL
这里是MySQL新手
我已经在我的Windows10机器上安装了MySQL,可以使用根用户名使用MySQL工作台进行连接,一切都如我所承诺的那样工作。
但是,现在我想创建另一个用户进行连接,并只授予该用户对服务器上一个数据库的访问权限。
我已经使用以下命令创建了用户:
CREATE USER 'user'@'localhost' IDENTIFIED BY 'f^rest_of_password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'user'@'localhost';
我需要一个用户能够从机器foobarhost IP 10.11.12.13登录我们的MySQL服务器5.6。
因此,我创建了一个用户'joe'@'foobarhost',但他无法登录。我必须创建一个用户'joe'@'10.11.12.13',这一次运行良好。
我的问题是: MySQL如何处理涉及用户的主机名和IP地址?
MySQL 在检查匹配之前对用户表进行排序,使用IP地址和主机名作为要匹配的最特定的值.然而,文档并没有指定什么是优先级-主机名或IP。MySQL是否尝试主机名解析,如果失败,是否对IP执行检查?
用户表的推荐用法
我已经在UbuntuServer16.04虚拟机上安装了MySQL数据库服务器。我创建了一个名为Test的新数据库:
CREATE DATABASE IF NOT EXISTS Test;
我还创建了新的远程用户“test”,并授予他在该数据库上的权限:
CREATE USER 'test'@'10.17.6.144' IDENTIFIED BY 'test';
GRANT ALL PRIVILEGES ON 'Test'.* TO 'test'@10.17.6.144;
我试图使用MySQL IDE连接到Data
我正在尝试从外部文件执行mysql,这就是我要做的:
mysql -u "root" -p < "init.sql" #在终端中调用这个
尝试过这样的方法:
init.sql内容:
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'password';
但这最终在第5行的错误1396 (HY000)中结束:“myuser”@“localhost”操作创建用户失败
当阅读建议首先删除用户的帖子时:
init.sql内容:
DROP USER 'myuser