oracle数据库一年服务费,oracle数据库免费的与付费的区别

首页 > 技术 > 作者:YD1662023-04-17 03:57:46

禁忌2:忌使用dblink

dblink 提供的机制可以使得在一个数据库的存储过程、触发器、数据库函数中方便的访问另一个数据库,可以方便地为应用只需连接一个数据库就可以访问另一个数据库中的数据,因此给多数据库环境使用带来了很大的便利性。

但 dblink 在跨数据库事务提交上容易引发问题,一般可以在不带事务的 DML 简单查询中使用,如果一定要带事务必须确保事务提交迅速,否则容易引发分布式事务锁。而应用程序中使用时,由于运行的环境复杂多变,无法百分之百保障事务的完整性和响应快速,很容易引发分布式事务锁并有一定几率触发 Oracle 的 BUG,同时 dblink 本身会大概率甚至百分之百带来 scn 号跳变 bug,并引发 scn 号跳变在数据库间传播。导致系统故障甚至数据库瘫痪。因此不要在代码开发中使用 dblink。平时运维也尽量少用,如果一定要用最好不带事务,并尽快释放连接。

oracle数据库一年服务费,oracle数据库免费的与付费的区别(5)

禁忌3:忌用大表关联统计

在一个系统中,除了实时类交易外,也存在一定要求数据实时的统计或查询需求,针对这种数据统计,切忌使用大表关联进行统计,因为会导致数据库消耗大量计算资源、占用过多的临时空间,影响其他实时业务的响应甚至导致系统无法响应。

对于这种需要跨多个大表的统计,最理想的是不放在 OLTP 数据库执行,如果一定要执行,一是要想办法限制数据的范围(如基于时间限制只能统计当天的),二是对于两个大表关联的 SQL 进行拆分,拆分成两个 SQL,前一个 SQL 获取的数据通过游标打开后再逐条去另一个大表使用索引逐条数据进行访问,再用客户端进行统计运算,或者通过游标获取数据生产临时表再基于临时表进行统计。

oracle数据库一年服务费,oracle数据库免费的与付费的区别(6)

禁忌4:忌用字典式字段索引

索引只有说数据在索引字段比较分散才有效果,如果基于一些字典式字段(如性别、课程等)建索引,起不到很好的效果不说,还浪费存储空间。这种字典式的字段如果一定要发挥类似索引的效果,可以按字典值建分区键。

oracle数据库一年服务费,oracle数据库免费的与付费的区别(7)

禁忌5:慎用主键约束

某个表的主键理论上看起来是个很好的机制,但在一般性应用中,由于主键不能更新,因此在运维时会带来很多不便,一般建议慎用,而是可以用非空和唯一性约束方式来替代。

oracle数据库一年服务费,oracle数据库免费的与付费的区别(8)

上一页12345下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.