欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【Oracle】杂记

程序员文章站 2022-07-13 08:04:48
...

1.对Oracle数据库进行描述时我们更愿意将它拆成两部分,一部分是内存加后台进程,这部分称为Oracle的实例部分,另一部分是存放在磁盘中的文件,称作数据库。

2.凡是使用DBLink进行的业务操作,我们都称为分布式事务,这种事务是由Oracle来协调处理的,对用户来说是透明的。

3.分布式数据库之间要保证数据库间字符集一致,Oracle的建议是:

~客户端的字符集要等于数据库字符集或者子集

~多个数据库中最好设置成相同的,如果有特殊情况,那么数据库之间要保证字符集是被包含的关系。

4.DataGuard容灾数据库

5.ASM自动存储管理

6.expdp:导出表空间的数据文件时要注意表空间中的对象并非自包含,自包含的意思是不会被表空间以外的对象引用,比如表空间中的分区是表空间外的表的一个分区,或表空间中的对象被表空间外的对象引用等。

7.导出表空间的步骤:

通过表空间的方式进行备份,表空间导出的前提是要将表空间的状态设置为Read-Only状态,如果表空间上存储的是非分区表,通常很难将整个表设置为只读的,所以是不可行的:

<1>将表分区和分区索引(如果有)创建到单独的表空间上

<2>将需要备份的表分区以及分区索引所在的表空间设置为只读

<3>将需要导出的分区和分区索引与一个临时表以及索引进行分区交换

<4>对需要备份的临时表以及索引以导出表空间的方式进行备份

<5>复制表空间的文件,并与导出的文件一起保存

create directory tts as 'E:\';
                                           
expdp test/test directory=tts dumpfile = tts_p1.dmp transport_datafiles = (p1, p1_idx) logfile=tts_p1.log;

导入表空间是导出表空间的逆过程

8.对加载数据进行备份:SQL*Loader

9.对于内存相关参数的建议:PGA SGA Share Pool

10. I/O相关的参数DB_FILE_MULTIBLOCK_READ_COUNT

11.OLAP可以将DB_FILE_MULTIBLOCK_READ_COUNT设置大些反之OLTP数据库中用户每次读取的值并不多,所以可以考虑设置得小一些,要注意只有在以下两种情况多数据块的读取才会发生:

<1>FTS (FULL TABLE SCAN)

<2>INDEX_FFS (INDEX FAST FULL SCAN)

12.DB_FILES用来约束数据库可以打开的文件数,默认200,如果修改这个参数必须重启数据库才能生效,所以要预先考虑好需要设置的值大小。

13.OPTIMIZER_DYNAMIC_SAMPLING

oracle的动态采样级别有9个

在OLAP中建议采用Level 3或4,而OLTP中建议不适用动态采样技术。

14.出现乱码的两种情况:

<1>输入操作的OS字符编码和查询的OS字符集编码不一致

​<2>输入的客户端字符集和查询客户端的字符集不同。