使用 MySQL 的多用户应用程序

Multiple User Applications using MySQL

我正在 Python 中构建一个用户应用程序(例如),它使用了 MySQL。所以我创建了一个名为 application_db 的数据库,并为每个新帐户创建了一个新的 user。当我构建一个完全不同的用户应用程序时,它将 运行 在同一台机器上,我将创建另一个名为 new_application_db 的数据库并创建新用户。我担心 table msyql.user 将包含两个应用程序的用户,这会产生一系列问题。例如,在 table 中使用比需要更多的数据搜索用户(如果我使用 application2,我不需要了解 application1 的用户)会影响性能。此外,当新用户尝试使用用户名时,他可能无法使用,因为该用户名已被另一个应用程序中的用户使用。

我认为创建到不同端口的连接可能会解决问题。虽然当我尝试在 MySQL Workbench 中执行此操作时出现错误。

另一个想法是在机器上创建一个新服务器。尽管在 MySQL 的文档中,我发现的唯一内容是 CREATE SERVER 语句,但我认为这并不能解决问题。

哪种方法最适合解决问题?

提前谢谢你,如果问题很愚蠢,我深表歉意。我在 MySQL.

的世界里是自学成才的新人

主要问题是你误解了mysql.user的意思。 mysql.user 是为了存储 MySQL 用户,这与您的应用程序用户不同。 mysql.user 在您的服务器上存储允许直接登录 MySQL 的用户,而不是应用程序的用户。

一个非常普遍的做法是为每个应用程序存储一个 mysql.user

现在,您可能会问:那我应该如何存储我的应用程序的用户?

答案很简单:您的两个应用程序中的用户都需要 table,这样您在问题中提出的担忧就会自动消失。