mysql - MySQL用户创建数据库需要什么权限?

标签 mysql

root以外的用户是否可以创建数据库?

 GRANT SELECT, CREATE ON *.* TO 'myguy'@'thatmachine' IDENTIFIED BY PASSWORD '*12057DFA2BFBD8760D4788735B1C3E26889D7ECE' |
 GRANT ALL PRIVILEGES ON `db1`.* TO 'myguy'@'thatmachine'
 GRANT ALL PRIVILEGES ON `db2`.* TO 'myguy'@'thatmachine'

我想知道这里缺少什么特权?另外,为什么第一行附有密码?

更新

让我进一步澄清我的问题的重点是什么。我有两台数据库机器,源和目标。源机器上有很多客户数据库。我需要将这些源数据库移动到另一台目标机器。

数据库采用 mysqldump'ed .sql 文件的形式,这些文件是从源到目标的 sftp'。然后,目标用户(而非 root)必须从每个 .sql 文件在本地重新创建数据库,执行一些操作,然后删除数据库。

如果不授予目标用户对 *.* 的全局权限,我无法找到一种方法将这些权限授予目标用户,这实际上使该用户与 root 用户一样危险。

最佳答案

关于mysql - MySQL用户创建数据库需要什么权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9934447/

相关文章:

mysql - 如何在 MySQL 上进行高级选择

mysql - 如何使用 LIMIT 从 MYSQL 中选择包含一个具有值的元素的数据,例如。 1

mysql - 通过检查两列获取出现在一个表中但不在另一个表中的唯一行

php - 当针的线比大海捞针的线还长时搜索数据库

php - Laravel 和 AWS Cloudfront

mysql - 使用 liquibase 时相同的数据类型修改数据类型

mysql - 如何在MySQL中将表与条件的结果字段连接起来

在 VIEW 中使用的 Mysql 函数不会返回正确的结果。

MySQL优化连接查询 "OR"条件

mysql - Ruby on Rails : JQuery autocomplete on heroku server (SQL, PostgreSql 可能错误)