Questions tagged «database»

该标签用于一般数据库问题。如果您对SQL有疑问,请改用该标记。

8
重构或升级数据库以处理新功能
针对数据库模式问题的一些回答,建议使用一个附加表来规范不属于当前要求的功能的数据库(UserDepartment表允许员工/用户与他们可能在不同部门之间建立多对多关系属于。)。 不反对规范化。似乎在进行数据库设计时,大力推动包含他们“确定”某人将来会想要的功能。将表/字段添加到数据库以适应功能是否是如此困难,以至于过度工程化的趋势?如果需要,它们是否会像应用程序的其余部分那样进行重构或升级?重做从来都不是一件有趣的事,但是可以将数据从一个表转移到一个新表。只是不确定这种思路会在哪里结束。 编辑:对此有很大的反感,我想知道有多少项目最终没有添加需要进行重大数据库更改的功能,或者是否采取了非规范化的方法(例如添加DepartmentID2字段而不是新表)。员工需要多个部门是一个常见的领域问题。我只是没有注意到许多杂乱无章的数据库模式。

3
存在哪些方法来处理数据库变更管理?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 我最近开始在使用Subversion的Web开发中使用版本控制。这对于管理我开发的文件非常有用,但对于我有时需要对数据库进行的更改却无济于事。据我所知,我正在使用的服务器上没有任何数据库管理系统,而且我很可能无法让他们安装任何东西。在这种环境下,管理数据库有哪些选择?


3
您如何处理不断变化的数据库尺寸?
在过去大约两个月的时间里,我一直在寻找解决方案或实践来处理数据库中的发布管理。我正在寻找人们认为是处理此问题的最佳过程。 我们的数据库有3个环境: 发展历程 用户验收测试(UAT) 生产 问题是有时我们要对开发数据库中的某些内容进行更改,并需要进行部署,因此某些功能可能尚未准备好发布到UAT。 最近,我们开始使用Red Gate SQL Source控件存储所有实体(具有常规提交)。 我曾考虑过要基于变更集(例如,从变更集X到后端的所有内容现在都被推送到UAT),但这意味着人们只在将我们的代码部署到源代码管理中之前,才进行可能会造成混淆的部署(特别是因为人们健忘)。使用变更集方法的另一个问题是,如果存储过程中存在需要修复的错误,变更集编号最终将超出修订的最大变更集范围,因此,如果需要根据最大变更集重新创建数据库,我们将再次推出该错误。 关于流程有什么建议吗? 谢谢

8
在超快速的数据库中扫描十亿行
背景 本地数据库包含近13亿个唯一行。每行都与特定的纬度和经度(位置)间接相关。每行都有一个日期戳。 用例 问题如下: 用户设置开始/结束日期以及值的范围(例如100到105)。 系统将按位置分组与给定日期匹配的所有行。 系统执行确定在那些日期期间具有落入给定值范围的统计可能性的位置。 系统向用户显示所有匹配的位置。 这是速度和规模的问题。 题 您能想到哪一种最便宜的解决方案体系结构可使这种系统在五秒钟内为用户检索结果? 当前系统 当前环境是: PostgreSQL 8.4(可以升级;不能选择切换数据库) R和PL / R XFS文件 WD VelociRaptor 8 GB RAM(Corsair G.Skill; 1.3 GHz) 四核原装Intel 7(2.8 GHz) Ubuntu 10.10 可以接受硬件升级。 更新-数据库结构 表中的数十亿行类似于: id | taken | location_id | category | value1 | value2 | value3 id-主键 采取-分配给行的日期 …

3
如何在开源项目版本中管理数据库架构更改
我管理一些K-12学校和一些大学使用的开源PHP / MySQL Web应用程序。我也是该项目的唯一开发人员。虽然它过去只不过是我老板托管的应用程序的源代码下载,但在过去的一年中,我一直致力于将其变成一个“真正的”开源项目,其中包含文档,带编号的发行版,公共变更日志等。 我正在寻求改善升级过程,其中一个潜在的难题(尤其是对于IT专业人员匮乏的学校而言)是在两个发行版之间对数据库架构的更改。它们不经常发生或变化不大,但我希望您对此过程提出建议。 当前,我维护一个基本的SQL安装脚本,以在新安装中设置数据库。这包括当前版本的完整架构;全新安装不需要任何进一步的操作。版本之间发生的更改存储在upgrade-$releasever.sql脚本中,对于所有被跳过的版本,有必要增量运行所有升级脚本。 Shell脚本不合适,因为我们很多用户都在没有Shell访问权限的主机上运行。由于其他优先事项,不太可能实现基于PHP浏览器的复杂安装程序/升级脚本。但是,我想使用基于浏览器的PHP脚本来简化升级。关于如何处理的建议?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.