我正在创建一个mysql数据库,以便为一个高频率的网站服务,我正在努力选择如何规则访问这个数据库。如果该网站的每个用户都有个人访问数据库或网站应该访问数据库并为客户服务吗?
例如,如果我在网站上有Mike和Stanley用户,我应该在数据库中创建用户'mike'@'localhost'和'stanley'@'localhost'吗?
或者我应该创建'mywebuser'@'localhost'来为这两个客户端提供服务,有一个存储过程可以检查他们访问数据库的能力吗?
答案 0 :(得分:3)
例如,如果我在网站上有Mike和Stanley用户,我应该 在DB中创建用户'mike'@'localhost'和'stanley'@'localhost'?
或者我应该创建'mywebuser'@'localhost'来同时提供这些服务 客户端,具有将检查其能力的存储过程 访问数据库?
您肯定希望为应用程序创建用户,而不是为应用程序的用户创建用户。出于安全原因,请务必仅向该用户授予必要的权限。对于只在数据库中执行INSERT,UPDATE,DELETE和SELECT的应用程序,您可能不需要CREATE,ALTER或DROP权限。
在mysql连接时检查用户的登录凭据需要您捕获连接期间抛出的C错误,即generally a bad practice。