我将berkeley DB配置为并发数据存储。 我总是从一个具有不同进程数的应用程序访问数据库(直到64个进程)。
但是,我尝试使用更多进程来访问数据库(超过64个)。由于这个事实,我必须使用多台机器,然后每台可用的机器只有64台处理器。 数据本身保存在NFS上。 从两台机器访问数据会导致应用程序冻结。 任何想法我需要设置什么标志以允许这样的行为? 直到现在我刚刚使用了带有标志的环境:DB_CREATE,DB_INIT_MPOOL,DB_INIT_CDB,DB_THREAD。
答案 0 :(得分:1)
它不会起作用,因为没有协议可以跨多个系统锁定数据库页面。您必须将访问限制在一台计算机上。来自Berkeley DB FAQ:
Berkeley DB并非旨在完全支持对网络文件系统或SAN上可用的共享磁盘上的数据库环境进行多系统并发访问。