久综合色-久综合网-玖草影视-玖草资源在线-亚洲黄色片子-亚洲黄色片在线观看

Hello! 歡迎來到小浪云!


Oracle12.2創建數據庫遇到的一些問題


avatar
小浪云 2025-01-23 129

Oracle12.2創建數據庫遇到的一些問題

oracle 12cR2 版本推出后,其新特性吸引了眾多 dba 的關注。為了充分了解新版本,我們需要進行充分的測試和演練。從 12cR2 Linux 版本發布之日起,我就開始使用 DBCA 靜默創建數據庫進行測試,其中多租戶架構(容器數據庫 CDB)無疑是一個亮點。

CDB 架構在 12c 中的引入對 Oracle 數據庫底層架構產生了重大影響,因此 CREATE database 語句也發生了顯著變化,引入了種子數據庫 (seed) 的概念。此外,12.2 版本中 undo 表空間的管理模式也引入了 local 和 share 兩種模式,這是與 12.1 版本的主要區別。

您是否嘗試過手動創建數據庫?根據我的測試經驗,其中存在一些潛在問題,本文旨在幫助您避免這些彎路。

**12c 中的 CREATE DATABASE 語句**

首先,使用 CREATE DATABASE 語句創建數據庫。Oracle 官方文檔對 12.2 版本中的該語句進行了詳細說明。

創建容器數據庫時,文檔提供了兩種方式:一種使用 OMF(Oracle Managed Files),另一種是非 OMF 方式。日常使用中,我們通常更傾向于非 OMF 方式;如果數據庫位于 ASM 中,則會傾向于自動管理,因為 ASM 的文件管理基于 OMF 方式。

為了方便演示,我將使用 OMF 方式進行說明,這樣 CREATE DATABASE 語句的結構會更清晰簡潔。

創建一個 CDB,創建參數文件,并將數據庫啟動至 nomount 狀態后,可以使用以下語句:

CREATE DATABASE newcdb USER SYS IDENTIFIED BY sys_password USER SYSTEM IDENTIFIED BY system_password EXTENT MANAGEMENT LOCAL DEFAULT TABLESPACE users DEFAULT TEMPORARY TABLESPACE temp UNDO TABLESPACE undotbs1 ENABLE PLUGGABLE DATABASE SEED SYSTEM DATAFILES SIZE 125M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED SYSAUX DATAFILES SIZE 100M;

與之前的版本不同之處在于以上黃色部分。

**12c 中的 catcdb.sql 腳本**

完成數據庫創建步驟后,工作才完成了一半。另一項重要工作是初始化數據字典,這需要手動運行 catalog.sql 和 catproc.sql 這兩個核心腳本,以及其他輔助腳本(如 publd.sql 等)。然而,12.2 版本有所改變,文檔中指出只需使用 catcdb.sql 腳本即可。

在 12.1 版本中,catcdb.sql 是一個標準的 SQL 文件,它會引用其他 SQL 腳本。但在 12.2 版本中,catcdb.sql 引用的是 catcdb.pl perl 腳本,您不會直接看到 catalog.sql 和 catproc.sql 等腳本的調用,這些都被封裝起來了。

調用方式仍然類似。

**遇到的第一個問題**

運行 catcdb.sql 腳本需要輸入兩個參數,但文檔并未解釋參數含義。這兩個參數分別是 $ORACLE_HOME/rdbms/admin 和 catcdb.pl。如果不知道參數,也不用擔心,因為您可能首先會遇到其他問題。我們先不輸入任何參數,直接回車:

@?/rdbms/admin/catcdb.sql

系統會提示輸入兩個參數值,然后報錯:

Can’t locate Term/ReadKey.pm in @INC (@INC contains: /U01/app/oracle/product/12.2/rdbms/admin /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /U01/app/oracle/product/12.2/rdbms/admin/catcdb.pl line 30. BEGIN failed–compilation aborted at /U01/app/oracle/product/12.2/rdbms/admin/catcdb.pl line 30.

錯誤提示找不到 ReadKey.pm 模塊。雖然 Linuxunix 系統自帶 Perl,但無需重新安裝 Perl。所需文件位于 $ORACLE_HOME 下的 Perl 目錄(版本為 5.22.0),只需將該目錄添加到 PATH 環境變量即可:

export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/perl/bin:$ORACLE_HOME/jdk/bin:$PATH

這樣就解決了第一個問題。

**遇到的第二個問題**

接下來,可能會遇到找不到 util.pm 模塊的問題:

Can’t locate util.pm in @INC (you may need to install the util module) (@INC contains: /U01/app/oracle/product/12.2/rdbms/admin /home/U01/app/oracle/product/12.2/perl/lib/site_perl/5.22.0/x86_64-linux-thread-multi /home/U01/app/oracle/product/12.2/perl/lib/site_perl/5.22.0 /home/U01/app/oracle/product/12.2/perl/lib/5.22.0/x86_64-linux-thread-multi /home/U01/app/oracle/product/12.2/perl/lib/5.22.0 .) at /U01/app/oracle/product/12.2/rdbms/admin/catcdb.pl line 35. BEGIN failed–compilation aborted at /U01/app/oracle/product/12.2/rdbms/admin/catcdb.pl line 35.

這時,我們需要查找 util.pm 文件。如果找不到,可以嘗試將 util 改為 Util,看看是否能找到匹配的文件。

**需要手動修改 catcdb.pl 腳本**

找到 Util.pm 文件后,需要修改 catcdb.pl 腳本,將 util 修改為 Util:

use Term::ReadKey;             # to not echo password use Getopt::Long; use Cwd; use File::Spec; use Data::Dumper; use Util qw(trim, splitToArray); #修改為Util use catcon qw(catconSqlplus);

修改后再次運行,仍然可能報錯。這時,需要切換到 Hash 目錄下運行腳本。

**小結**

以上問題希望能幫助大家避免在 12.2 版本中手動創建數據庫時遇到的問題。 這些細節問題提醒我們,在使用新版本數據庫時,需要仔細閱讀文檔并進行充分的測試。 希望本文能對您的工作有所幫助。

相關閱讀

主站蜘蛛池模板: 成 人 在 线 免费 8888 www | 2022国产精品网站在线播放 | 国产性大片黄在线观看在线放 | 亚洲日本久久一区二区va | 亚洲一区二区免费 | 国产精品色内内在线播放 | avtom影院入口永久在线观看 | 一级毛片免费完整视频 | 天堂成人av | a级国产精品片在线观看 | 国产精品国产亚洲精品看不卡 | 亚洲国产欧美日韩 | 在线中文字幕精品第5页 | 狠狠色丁香婷婷综合小时婷婷 | 成年美女黄网站色视频大全免费 | 欧美日韩国产一区三区 | 91久久亚洲精品国产一区二区 | 成人毛片网站 | 99精品在线视频观看 | 精品理论片一区二区三区 | 亚洲国产欧美在线人成精品一区二区 | 99视频国产在线 | 国内精品不卡一区二区三区 | 国产精品久久国产精品99 | 日韩欧美第一页 | 亚洲一区二区中文字幕 | 成人综合婷婷国产精品久久免费 | 日本aaaa级 | 三级国产精品一区二区 | 国产中的精品一区的 | 免费在线观看一级毛片 | 久久精品国产免费观看99 | a级毛片视频免费观看 | 草草影院视频 | 暖暖免费高清日本一区二区三区 | 日韩视频欧美视频 | 日本乱人伦片中文字幕三区 | 久久综合久久美利坚合众国 | 无套内谢孕妇毛片免费看 | 精品中文字幕在线 | 国产成人精品日本亚洲专区6 |