我能够通过根帐户创建新的数据库。但我需要使用我创建的新用户创建新的数据库。
下面是我尝试使用新用户创建数据库时遇到的错误
ERROR 1044 (42000): Access denied for user 'user'@'localhost' to database 'new_db'
如何向“用户”授予权限,使其创建任意数量的新数据库?
更新:
这也是我尝试过的:
mysql> grant all privileges on db.* to 'user'@'%' with create;
ERROR 106
我的问题是:我创建了一个新用户:GRANT ALL PRIVILAGES ON sampdb.* TO 'monty'@'' IDENTIFIED BY 'pass',这个用户在两个数据库中使用:mysql.user(没有任何特权)和mysql.db(除了GRANT one之外几乎所有特权)。好的。之后,我尝试通过这个新用户访问sampdb数据库:mysql -u monty -ppass sampdb。MySQL回答说:“拒绝用户'monty'@'localhost (使用密码: YES)‘访问。
请告诉我,我哪里搞错了
我使用的是MySQL 5.0,我在数据库中创建了一个新用户:
create user 'johann'@'localhost' identified by 'johann22';
grant select on jewellery.customers to 'johann'@'localhost';
现在我想以新用户的身份连接,但是每次退出MySQL时,命令都会直接提示我密码'root‘
我已经尝试过用root连接,然后使用以下代码作为新用户进行连接:
-u johann -p johann22;
但它说我
在尝试导航或了解有关mysql中用户的更多信息时,我意外地删除了用户根的特权。现在我无法创建新数据库、新用户等。如何将权限重新还原为用户根?
当我犯错误时,我想要做的是为我的一个数据库创建一个唯一的用户,我只想为特定的数据库而不是所有的数据库删除根用户的特权。似乎我为整个mysql删除了根用户的特权。
Tried
USE mysql;
UPDATE user SET Grant_priv='1' WHERE User='root';
FLUSH PRIVILEGES;
Getting
错误SQL查询:
使用mysql;
MySQL说:文档
1044
我是MySQL的初学者,我最近才开始使用这个服务器。我以前没有使用过任何其他服务器。我也是SQL查询语言的初学者。当我下载MySQL服务器时,一个名为“MySQL 8.0命令行客户端”的程序和“MySQL Shell”一起被下载。到目前为止,我一直在使用来自根用户的命令行客户端来访问数据库和写查询。后来,我决定使用以下代码从命令行客户端创建一个新用户:
> use mysql;
> CREATE USER 'LRNGSQL'@'localhost' IDENTIFIED BY 'lrngsql123';
> GRANT ALL
当我尝试创建数据库时,收到用户'@'localhost对数据库emp的访问被拒绝的错误
当我查询显示授权时
mysql> show grants;
+--------------------------------------+
| Grants for @localhost |
+--------------------------------------+
| GRANT USAGE ON *.* TO ''@'localhost' |
+----------------------------------
我想要创建一个新的mysql用户,可以访问mysql数据库中的一些选项。
这是我当前的create查询:
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
当我运行此代码时,服务器将显示以下错误消息:
(Error: 1227 SQLSTATE: 42000 (ER_SPECIFIC_ACCESS_DENIED_ERROR)
Message: Access denied; you need the %s privilege for this operation)
使用MySQ
对于我们在mySQL中使用以下语句创建的每个新用户
CREATE USER newuser@localhost IDENTIFIED BY 'password';
"SHOW GRANTS“仅显示"USAGE ON *.*”权限。
但是用户能够选择、插入、..在"test“和"information_schema”数据库上,我无法使用下面给出的revoke语句撤销"test“上的这些权限。
REVOKE ALL ON test.* FROM newuser@localhost;
ERROR 1141 (42000) : There is
我有一个应用程序,管理员可以创建新用户,在创建新用户后,我想为创建的每个用户创建单独的数据库,并且我在用户应用程序中有一些迁移(表)。因此,在创建新数据库后,我无法在新数据库中运行用户迁移。
DB::statement('create database ' .$dbName ); // with this I'm creating new db and after this I've some command like this:
Artisan::call('migrate', ['--database' => $ne
我遵循了这些步骤。
1)我以root用户身份登录mysql。
2)创建一个名为"studentdb"的新数据库。
3)我使用db和从sqldump导入db表。
4)我为该studentdb创建了新用户,并为该用户提供了某些特权。
5)但是当我检查user select * from mysql.user;时,我找不到我创建的用户。
6)所以,当我使用这个命令select * from mysql.db order by db;检查新创建的db时,我也找不到它。
7)但是当我使用show databases;时,我可以找到新创建的数据库。
那么,为什么我在第六步中找不到新创建的数
我最近尝试了很多web开发应用,比如Drupal,Moodle,Efront和Elgg。为了提高安全性,我使用Parallels在Mac OS X 10.4中的虚拟XP机器上的XAMPP安装程序上运行测试服务器。我认为这应该是非常安全的,对吧?
在安装像Elgg这样的软件时,它会要求我在MySQL服务器中创建一个用户,以便它可以访问数据库。我想知道我创建新用户的方法是否正确,以及我应该授予该用户什么权限。
目前,我通过进入PHPMyAdmin、MySQL数据库、用户表并插入新行来创建新用户。这是正确的吗?由于某些原因,它并不总是有效的。
附言-我应该为这一切而烦恼,还是让每个软件都使用我的根账
我创建了一个新用户,但在授予访问权限时遇到了问题。但我可以用新用户'apple.2‘登录mysql,但不能授予它访问权限或创建数据库。我还有一个叫'apple‘的用户,但我不认为这是问题所在。
~$ mysql -u apple.2 -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 215
Server version: 5.7.31-0ubuntu0.18.04.1 (Ubuntu)
Copyright (c) 2