也许这是一个好问题或坏问题,但在我的谷歌研究中,我无法找到一个好的答案(可能是因为我不善于进行良好的搜索)。简单来说:
- 可以在没有用户和/或所有者的情况下创建数据库吗?
我正在尝试回答Stack Overflow 上的一个问题,用户已经分享了它的数据库配置,一些事情引起了我的注意:
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = '';
$db['default']['password'] = '';
$db['default']['database'] = 'gotche';
$db['default']['dbdriver'] = 'mysqli';
数据库没有用户名!
无论使用的数据库是什么——在场景中是 MySQL(不知道版本)——这可能吗?
我不认为出于安全原因删除了用户名和密码:最好将其更改为类似的内容*****
- 在这种情况下每个人都会知道有用户名/密码,但我可以询问用户是否是这个原因。
MySQL 允许使用空白密码(匿名访问)的空白用户进行连接。
请参阅保护初始 MySQL 帐户
除此之外,MySQL 没有像 SQL Server 和 Postgres 那样的“数据库所有者”的概念。有一个权限系统,用户可以使用语句分配对数据库、表等的各种类型的访问权限
GRANT
。