0

我使用的其中一个 ERP 应用程序的配置方式是只有 1 个用户(例如 USER A)连接到数据库。登录到系统并尝试做任何事情的应用程序的任何用户(员工数以千计)实际上是在调用用户 A 连接到数据库并为他执行查询。数据库是甲骨文。

我想知道如何用 mySQL 实现类似的事情。我有一个使用 php 和 mySQL 数据库构建的 Web 应用程序。我希望不同的人通过网络查询数据库。目前,当用户打开网页时,通过单个 db 用户建立与数据库的连接。在查询结束时,我关闭了连接。但是,数据库的最大用户连接数为 10,据我了解,这意味着一个用户最多只能建立 10 个连接。我不想为所有尝试使用我的应用程序的人创建多个用户(我什至不知道将使用该应用程序的人数,我不相信这将是一个可扩展的解决方案)

4

2 回答 2

0

您应该为您的 Web 服务器或您的编程语言寻找一个数据库连接缓存机制作为组件。这样的机制将为您透明地重用连接。

于 2009-07-29T20:23:02.277 回答
0

如果数据库连接被拒绝,则返回 HTTP 错误 502。如果连接在每个页面加载结束时关闭,它们应该只持续约 100 毫秒,因此在大多数情况下并发连接数会很低。

如果您需要调整它,请编辑 my.cnf 以增加并发连接数:

max_connections = 150
max_user_connections = 150

如果流量非常高,您可以在 PHP 中启用持久的 MySQL 连接,或者缓存您的内容,以免破坏数据库。

希望有帮助!

于 2009-07-29T20:33:43.687 回答