我的一个朋友遇到了一个问题,一个大型的mySQL数据库,以及在多个表上有相当多的重复列。
为了更好地描述这个问题,数据库为多个服务提供服务,如FTP、Postfix、webmail,几乎所有在通用Linux服务器上运行的常见服务,所有这些服务都使用此数据库。问题是,大多数服务不知道如何读取多个表,所以如果你使用多个表项,如用户名,密码,开关必须在这些服务特定的表中重复。hing Ex。UserProfile表包含所有与用户相关的数据。(用户名,密码) ACL表包含访问相关数据(AccountEnabled,FTPEnabled,AccessType) FTP表包含FTP相关数据(配额,目录等)我想你已经明白了…因此,如果我需要ftp服务,我必须读取UserProfile表,ACL表和FTP表,但由于我不能从多个表中读取,我只读取ftp表,其中我已经复制了我需要的字段,如UserName,Password和FTPEnabled。
现在他们正在尝试创建一个应用程序来管理所有这些服务,您可以想象到到目前为止,这都是手工完成的,服务器正在为数百多个用户提供服务。因此,现在他们正在尝试创建一个管理所有这些表的管理界面。问题是,必须写入的数据中有30%是重复数据。例如。用户名和密码必须在不同的表中写入6次。
有没有可能用"Symlink“或类似的东西创建一个表?这样您就可以将所有数据放在一个临时表中,该临时表可供所有服务访问并动态更新。或者,有没有其他“聪明”的方法,你能想到,让这一切变得更容易?
谢谢你抽出时间来,蒂特尔
发布于 2009-01-15 16:34:56
您要查找的内容称为VIEW。
这样,你就可以有一个包含所有信息的中心表,每个应用程序一个视图,具有正确的结构。
发布于 2009-01-15 16:34:46
为什么服务不能访问多个表?
如果您真的想“符号链接”一个表,请查看视图。
https://stackoverflow.com/questions/447470
复制相似问题