我使用的ERP应用程序之一的配置方式是只有1个用户(例如USER A)连接到数据库。该应用程序的任何用户(劳动力数以千计)登录到系统并尝试执行任何操作实际上是调用USER A连接到数据库并为他执行查询。数据库是Oracle。
我想知道如何用mySQL实现类似的功能。我有一个使用php和mySQL数据库构建的Web应用程序。我希望不同的人通过网络查询数据库。目前,当用户打开网页时,通过单个数据库用户建立与数据库的连接。在查询结束时,我关闭连接。但是,数据库的最大用户连接数为10,根据我的理解,一个用户最多只能建立10个连接。我不想为所有尝试使用我的应用程序的人创建多个用户(我甚至不知道将使用该应用程序的人数,我不相信这将是一个可扩展的解决方案)
答案 0 :(得分:0)
您应该将数据库连接缓存机制作为Web服务器或编程语言的组件。这种机制将为您透明地重用连接。
答案 1 :(得分:0)
如果数据库连接被拒绝,则返回HTTP错误502.如果在每个页面加载结束时关闭连接,它们应该只持续约100ms,因此在大多数情况下并发连接将是低的。
如果您需要调整它,请编辑my.cnf以增加并发连接:
max_connections = 150
max_user_connections = 150
如果流量非常高,您可以在PHP中启用持久性MySQL连接,或者缓存您的内容,以免破坏数据库。
希望有所帮助!