9i建立非標準BLOCK_SIZE資料庫(一)
很早之前看到Tom提到,可以建立一個非標準的BLOCK_SIZE的資料庫,也就是說資料庫的DB_BLOCK_SIZE不在2K、4K、8K、16K和32K之中。
一直沒有計劃測試,今天正好有環境,簡單測試了一下。
在9.2環境中,建立一個DB_BLOCK_SIZE為10K的資料庫:
[oracle@bjtest ~]$ mkdir -p /opt/oracle/admin/test9/bdump
[oracle@bjtest ~]$ mkdir /opt/oracle/admin/test9/udump
[oracle@bjtest ~]$ mkdir /opt/oracle/admin/test9/cdump
[oracle@bjtest ~]$ mkdir /data/oradata/test9
[oracle@bjtest ~]$ export ORACLE_SID=test9
手工編輯初始化引數:
[oracle@bjtest ~]$ vi inittest9.ora
db_name=test9
db_cache_size=256m
log_buffer=2048000
shared_pool_size=200m
large_pool_size=64m
java_pool_size=64m
pga_aggregate_target=128m
undo_management=auto
control_files=/data/oradata/test9/control01.dbf
background_dump_dest=/opt/oracle/admin/test9/bdump
user_dump_dest=/opt/oracle/admin/test9/udump
core_dump_dest=/opt/oracle/admin/test9/cdump
db_block_size=10240
compatible=9.2.0.1.0
注意DB_BLOCK_SIZE的大小是10K。
[oracle@bjtest ~]$ sqlplus "/ as sysdba"
SQL*Plus: Release 9.2.0.4.0 - Production on 星期四 5月 21 00:52:38 2009
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
已連線到空閒例程。
SQL> startup nomount pfile=inittest9.ora
ORACLE 例程已經啟動。
Total System Global Area 657246184 bytes
Fixed Size 743400 bytes
Variable Size 385875968 bytes
Database Buffers 268435456 bytes
Redo Buffers 2191360 bytes
SQL> CREATE DATABASE test9
2 DATAFILE '/data/oradata/test9/system01.dbf' SIZE 300m EXTENT MANAGEMENT LOCAL
3 DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE '/data/oradata/test9/temp01.dbf' SIZE 100m
4 UNDO TABLESPACE "UNDOTBS1" DATAFILE '/data/oradata/test9/undotbs01.dbf' SIZE 200m
5 CHARACTER SET ZHS16GBK
6 NATIONAL CHARACTER SET AL16UTF16
7 LOGFILE GROUP 1 ('/data/oradata/test9/redo01.log') SIZE 50M,
8 GROUP 2 ('/data/oradata/test9/redo02.log') SIZE 50M,
9 GROUP 3 ('/data/oradata/test9/redo03.log') SIZE 50M;
資料庫已建立。
SQL> show parameter db_block_size
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_block_size integer 10240
最後執行catalog.sql和catproc.sql,資料庫建立完成:
SQL> spo result.txt
SQL> @?/rdbms/admin/catalog.sql
SQL> @?/rdbms/admin/catproc.sql
SQL> spo off
簡單提一句,這種非標準BLOCK_SIZE的資料庫沒有什麼實際的意義,而且這種非標準塊的資料庫無法像其他資料庫遷移表空間,因為其他資料庫上沒有辦法設定DB_NK_BLOCK_SIZE的值,來載入這個資料庫的表空間。
要建立非標準塊的資料庫,必須設定COMPATIBLE,否則執行會報錯:
[oracle@bjtest ~]$ sqlplus "/ as sysdba"
SQL*Plus: Release 9.2.0.4.0 - Production on 星期四 5月 21 00:34:49 2009
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
已連線到空閒例程。
SQL> startup nomount pfile=inittest9.ora
ORACLE 例程已經啟動。
Total System Global Area 657246184 bytes
Fixed Size 743400 bytes
Variable Size 385875968 bytes
Database Buffers 268435456 bytes
Redo Buffers 2191360 bytes
SQL> CREATE DATABASE test9
2 MAXINSTANCES 1
3 MAXLOGHISTORY 1
4 MAXLOGFILES 5
5 MAXLOGMEMBERS 3
6 MAXDATAFILES 100
7 DATAFILE '/data/oradata/test9/system01.dbf' SIZE 1024M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
8 EXTENT MANAGEMENT LOCAL
9 DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE '/data/oradata/test9/temp01.dbf' SIZE 4096M REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED
10 UNDO TABLESPACE "UNDOTBS1" DATAFILE '/data/oradata/test9/undotbs01.dbf' SIZE 4096M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED
11 CHARACTER SET ZHS16GBK
12 NATIONAL CHARACTER SET AL16UTF16
13 LOGFILE GROUP 1 ('/data/oradata/test9/redo01.log') SIZE 512M,
14 GROUP 2 ('/data/oradata/test9/redo02.log') SIZE 512M,
15 GROUP 3 ('/data/oradata/test9/redo03.log') SIZE 512M;
CREATE DATABASE test9
*
ERROR 位於第 1 行:
ORA-01092: ORACLE 例程終止。強行斷開連線
在alert檔案中可以看到錯誤資訊:
Errors in file /opt/oracle/admin/test9/udump/test9_ora_26099.trc:
ORA-01501: CREATE DATABASE ??
ORA-00406: COMPATIBLE ????? 9.2.0.0.0 ???
Thu May 21 00:35:18 2009
Error 406 happened during db open, shutting down database
USER: terminating instance due to error 406
Instance terminated by USER, pid = 26099
ORA-1092 signalled during: CREATE DATABASE test9
MAXINSTANCES 1
MAXLOGHISTORY...
也就是說建立非標準的塊的資料庫要求相容性必須大於9.2。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-600606/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 9i建立非標準BLOCK_SIZE資料庫(二)BloC資料庫
- oracle block_size 為非標準塊的時候OracleBloC
- Oracle 9i 資料庫建立手冊Oracle資料庫
- Oracle標準資料庫稽核Oracle資料庫
- Profile標準化資料庫管理資料庫
- Java與資料庫 —— JDBC標準Java資料庫JDBC
- ORACLE資料庫標準審計Oracle資料庫
- 資料庫 - 關聯式資料庫標準語言SQL資料庫SQL
- 使用Profile標準化資料庫管理資料庫
- 【審計】標準資料庫審計資料庫
- 非標準物件介面物件
- 資料庫標準化與正規化資料庫
- Python標準庫14 資料庫 (sqlite3)Python資料庫SQLite
- Oracle 資料庫安全許可權配置標準Oracle資料庫
- RAC資料庫建立STANDBY(一)資料庫
- Python標準庫一覽Python
- 資料治理--03資料標準 形成企業自身標準6個文件, 怎麼透過資料標準一步步建表
- Python 快速教程(標準庫14):資料庫 (sqlite3)Python資料庫SQLite
- [轉]資料標準化
- 標準資料審計
- Tkinter (22) 標準化外觀及選項資料庫資料庫
- 國產資料庫適合搞國家標準嗎資料庫
- 基礎知識6——標準資料庫稽核——未完資料庫
- Oracle 9i資料庫的使用者建立以及許可權分配Oracle資料庫
- iOS標準庫中常用資料結構和演算法之KV資料庫iOS資料結構演算法資料庫
- Wireshark分析非標準埠號流量
- Go實戰準備工作---建立資料庫連線池Go資料庫
- 一個非常標準的連線Mysql資料庫的示例程式碼MySql資料庫
- oracle 9i資料庫做spaOracle資料庫
- 資料變換-歸一化與標準化
- 統計資料歸一化與標準化
- 建立資料庫資料庫
- C 標準庫 -
- 謹慎做資料庫技術的標準化(轉)資料庫
- 資料分析的標準SOP!
- 資料治理制定哪些標準
- 資料庫非一致性備份資料庫
- 2.3.3 關於使用非互動式/靜默DBCA建立資料庫資料庫