ホームページ > php教程 > php手册 > UNIX での ORACLE データベースの作成

UNIX での ORACLE データベースの作成

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-21 09:09:20
オリジナル
1218 人が閲覧しました

oracle|unix|作成|データ|データベース

データベースの作成は非常に一般的な作業であり、ORACLE のリファレンス ドキュメントにもある程度記載されていますが、実際にはそのような機会がほとんどないため、その方法を知らない人が多いのが現状です。実際にそれを行う機会がある場合、急いでどこから始めればよいかわからないかもしれません。この記事は完全な参考情報を提供します。

詳細な手順は次のとおりです:

ステップ 1: 準備

1. 環境変数:
ox1> 詳細 .profile_oracyx
# この部分は推奨されます
PATH=/data4/oracle/product/8.1。 7 /bin:/data4/ora817/bin::/usr/bin:.
ORACLE_BASE=/data4/ora817/app/oracle
ORACLE_SID=oracyx
ORA_NLS33=/data4/ora817/app/oracle/product/8.1.7 / ocommon/nls/admin/data
ORACLE_HOME=/data4/ora817/app/oracle/product/8.1.7

# この部分は特定の環境によって異なりますが、一部のパラメーターはデータベースの構築後に明確に記述するのが最適です
# LD_LIBRARY_PATH など、よりわかりやすくなります。
LD_LIBRARY_PATH=/data4/ora817/app/oracle/product/8.1.7/lib:/usr/lib
TNS_ADMIN=/data4/ora817/app/oracle/product/8.1.7/network/admin
USER=ora817
NLS_LANG=american_america.zhs16cgb231280
LOGNAME=ora817
ORA_DB=/data4/ora817/app/oracle/product/8.1.7/dbs
TERM=vt100
HOME=/data4/ora817
ORACLE_TERM=vt100
SHELL=/ /ksh
DISPLAY=ox1:0.0

2、パラメータファイル
ox1>pwd
/data4/ora817/app/oracle/product/8.1.7/dbs
ox1>cp init.ora initoracyx.ora
ox1>
#--------------------------開始---------- ------------------------------------
# db_name は、ビルド時に指定する必要がある唯一のパラメーターです。 ,
# ただし、通常は次のパラメータが部分的に調整されます
db_name = "oracyx"
instance_name = oracyx
service_names = oracyx
control_files = ('/data4/ora817/oradata/oracyx/control1.ctl', '/ data2/oradata /or
acyx/control2.ctl','/data5/oradata/oracyx/control3.ctl')
open_cursors = 1000
max_enabled_roles = 40
db_block_buffers = 18800
shared_pool_size = 204800000
java_pool_size = 0
log_checkpoint_interval = 1000000000
log_checkpoint_timeout = 1800
processes = 2000
log_buffer = 2048000
timed_statistics = true
max_dump_file_size = 10000
log_archive_start = true
log_archive_dest_1 = "location=/data5/archive /oracyx"
log_archive_format = Arch_%t_% s.arc
global_names = false
background_dump_dest = /data4/ora817/app/oracle/admin/oracyx/bdump
background_core_dump =partial
core_dump_dest = /data4/ora817/app/oracle/admin/oracyx/cdump
shadow_core_dump = none
user_dump_dest = /data4/ ora817/app/oracle/admin/oracyx/udump
db_block_size = 8192
remote_login_passwordfile = exclusive
os_authent_prefix = ""
distributed_transactions = 1500
compatibility = "8.1.7.0.0"
sort_area_size = 1024000
sort_area_retained_size = 1024000
db_files = 400
db_file_multiblock_read_count = 16
Parallel_max_servers = 8
lm_ress=900000
lm_locks=1500000
session_cached_cursors = 20
transactions_per_rollback_segment = 10
db_block_lru_latches = 6
instance_number = 1
resource_limit=TRUE
#----------- - - - - - - - - 終わり - - - - - - - - - - - - - - - - - ----------- -------------------

3. パスワードファイル:
ox1>pwd
/data4/ora817/app/ oracle/product/8.1.7/dbs
ox1> ; orapwd file=orapworacyxpassword=cyxentrys=10

Oracle パスワード ファイルのファイル名は orapw[sid] と厳密に標準化されていることに注意してください。デフォルトの検索順序は、最初に orapwsid を検索し、次に orapw を検索します。同じマシン上に 2 つのデータベースがある場合は、区別するために SID を指定する必要があります。

同時に、sqlnet.ora に次の内容が含まれていることを忘れずに確認してください:
sqlnet.authentication_services = (none)

もちろん、パスワード ファイルは必要ないので、この手順は省略できます。 。

4. ディレクトリを準備します:
ORACLE は非常に愚かで、それ自体でサブディレクトリを作成できないため、データベースの構築を開始する前に、すべてのデータ ファイルが保存されるディレクトリを作成する必要があります。 ここで作成されるディレクトリは
/data2/ です。 oracle /admin/oracyx/bdump
/data4/ora817/app/oracle/admin/oracyx/udump
/data4/ora817/app/oracle/admin/oracyx/cdump


ステップ 2: データベースの構築を開始します

1基本的なデータベース ファイルを作成します:

この部分では、制御ファイル、システム データ ファイル、オンライン REDO ログ ファイルなどの基本的なデータベース ファイルが作成されます。具体的なスクリプトは次のとおりです:

ox1> more cdb1_base.sh
#!/bin/sh
#-------------------------- - - 始める - - - - - - - - - - - - - - - - - - - - - - - --- -----
ORACLE_SID=oracyx エクスポート ORACLE_SID
ORACLE_HOME=/data4/ora817/app/oracle/product/8.1.7 エクスポート ORACLE_HOME

/data4/ora817/app/oracle/product/8.1.7/bin/svrmgrl<< EOF
connect external/cyx
spool / data4/ora817/cyx/cdb/crdb1.log
startup nomount pfile='/data4/ora817/app/oracle/product/8.1.7/dbs/initoracyx.ora'

データベース "oracyx" を作成
ファイルの再利用を制御
maxdatafiles 254
最大インスタンス数 8
最大ログヒストリー 100
最大ログメンバー数 2
最大ログファイル数 64
文字セット ZHS16CGB231280
各国文字セット ZHS16CGB231280
DATAFILE '/data4/ora817/oradata/oracyx/system.dbf'
SIZE 24 0M 再利用自動拡張オフ

logfile '/data4 /ora817/oradata/oracyx/log1.rdo' サイズ 4M 再利用、
'/data4/ora817/oradata/oracyx/log2.rdo' サイズ 4M 再利用、
'/data4/ora817/oradata/oracyx/log3.rdo' サイズ4M 再利用;

切断
スプールオフ
終了
EOF
#---------------------------------END- -------------------------------------------------- -

2. 他のテーブルスペースを作成します

この部分では、まずシステムテーブルスペースに適切な変更を加えてから、他のテーブルスペースの作成を開始します。 /bin/sh
#---------------------BEGIN---------------------- ---- ------------------------
ORACLE_SID=oracyx ORACLE_SID
/data4/ora817/app/oracle/product/8.1 をエクスポートします。 7/bin/svrmgrl < ;< EOF
spool /data4/ora817/cyx/cdb/crdb2.log
connect external/cyx

REM ********** システムテーブルスペースの変更 ***** ****
テーブルスペース システムの変更
デフォルト ストレージ (
初期 640K 次の 640K MINEXTENTS 1
MAXEXTENTS UNLIMITED PCTINCREASE 0);
テーブルスペース システムの最小エクステント 64K;

REM ********** のテーブルスペースOLS ****** ****
CREATE TABLESPACE TOOLS DATAFILE '/data4/ora817/oradata/oracyx/tools_01.dbf'
サイズ 4000M 再利用自動拡張オフ
最小エクステント 512K
デフォルトストレージ (初期 512K 次 512K MINEXTENTS 8 MAXEXTENTS) 4 096);

REM ********** INDX1 のテーブルスペース **********
テーブルスペース INDX1 データファイルを作成します '/data2/oradata/oracyx/indx1_01.dbf'
サイズ 4000M自動拡張の再利用オフ
最小エクステント 512K
デフォルトのストレージ (初期 512K 次の 512K ミネクスト 8 最大エクステント 4096);

REM ********** ユーザーのテーブルスペース************
CREATE TABLESPACE USER1 DATAFILE '/data6/oradata /oracyx/user1_01.dbf'
サイズ 4000M 再利用自動拡張オフ
最小エクステント 512K
デフォルトストレージ (初期 512K 次の 512K MINEXTENTS 8 MAXEXTENTS 4096);

レム ******* *** 一時用テーブルスペース *** *******
テーブルスペース一時データファイル '/data7/oradata/oracyx/temp_01.dbf' を作成
サイズ 4000M 再利用自動拡張オフ
最小エクステント 512K
デフォルトのストレージ (初期 512K、次) 512K MINEXTENTS 8 MAXEXTENTS 4096);

REM ********** RBS のテーブルスペース **********
CREATE TABLESPACE RBS DATAFILE '/data3/oradata/oracyx/rbs1_1.dbf'
サイズ 4000M 再利用自動拡張オフ
最小エクステント 512K
デフォルト ストレージ (初期 512K 次 512K MINEXTENTS 8 MAXEXTENTS 4096);

REM **** 6 つのロールバック セグメントの作成 *************** ***
パブリック ロールバック セグメント RBS_01 テーブルスペース RBS の作成
ストレージ (初期 10m 次の 10m ミネクスト 20 最適 200m);
ロールバック セグメント RBS_01 のオンライン変更;

パブリック ロールバック セグメント RBS_02 テーブルスペース RBS の作成
STOR年齢 (最初の 10 分、次の 10 分、次の 20 分、最適な値) 200m);
ロールバック セグメント RBS_02 をオンラインで変更します。
パブリック ロールバック セグメント RBS_04 テーブルスペース RBS の作成
ストレージ(初期 10m 次の 10m MINEXTENTS 20 最適な 200m);
ロールバック セグメント RBS_04 をオンラインで変更;

パブリック ロールバック セグメント RBS_05 テーブルスペース RBS
STORAGE (初期 10m 次の 10m MINEXTENTS 20 最適な 200m);
ロールバック セグメント RBS_05 をオンラインで変更;

作成パブリック ロールバック セグメント RBS_06 テーブルスペース RBS
ストレージ (初期 10m 次 10m ミネクスト 20 最適 200m);
ロールバック セグメント RBS_06 をオンラインで変更;

切断
スプール オフ
終了
EOF
#----------- - - - - - - - - - - 終わり - - - - - - - - - - - - - - - ------------------------

3. データ ディクショナリの作成

この部分では、Oracle 独自のスクリプトを呼び出してデータ ディクショナリを作成します。 Catalog.sql は、システム ベース テーブル、システム動的パフォーマンス ビュー、およびそれらのシノニムに関連するビューを作成するために使用されます。同時に、このスクリプトは、主に基本的なPL/SQL環境(データ型、事前定義された例外、組込みプロシージャと関数、SQL操作などのPL/SQL宣言を含む)、監査などの他のオブジェクトを作成するスクリプトを実行します。 、インポート/エクスポート、SQL*Loader およびインストール オプションなど。
Catproc.sql は、PL/SQL の使用環境を確立するために使用されます。さらに、RDBMS 機能を拡張するために、いくつかの PL/SQL パッケージが作成されています。このスクリプトは、アラート、パイプ、ログ分析、オブジェクト、ラージ オブジェクト、アドバンスト キュー、レプリケーション オプション、その他の組み込みパッケージとオプションといった RDBMS 機能の追加のパッケージとビューも作成します。
上記の 2 つは実行する必要があり、その他は実際のニーズに基づいています。使用されるものについては次のとおりです。
caths.sql は、異種サービス管理パッケージをインストールするために使用されます。
helpbld.sql および helpus.sql は、SQL*PLUS ヘルプで使用されるテーブルを作成する (ヘルプ機能テーブルを作成する) ために使用されます。
下位バージョンでは別の pupbld.sql を実行する必要があります。そうしないと、ログイン時に「製品ユーザー プロファイルが存在しません」というプロンプト メッセージが表示されます。 pupbld.sql は、ユーザー レベルのセキュリティを確保するために PUP (Product_User_Profile) テーブルを確立するために使用されます。基本的に、製品レベル (product_level) のセキュリティ メカニズムを提供します。

ox1> 詳細 cdb3_dd.sh
#!/bin/sh
#-----------------BEGIN--------------- ----------------------------------
ORACLE_SID=oracyx エクスポート ORACLE_SID
/data4/ora817/app/oracle /製品/8.1.7/bin/sqlplus 内部/cyx <spool /data4/ora817/cyx/cdb/crdb3.log

@/data4/ora817/app/oracle/product/8.1.7/rdbms /admin/catalog.sql;
@/data4/ora817/app/oracle/product/8.1.7/rdbms/admin/catproc.sql;
@/data4/ora817/app/oracle/product/8.1.7/ rdbms /admin/caths.sql;
system/manager に接続
@/data4/ora817/app/oracle/product/8.1.7/sqlplus/admin/help/helpbld.sql helpus.sql;

切断
スプールオフ
終了
EOF
#------終了----------------------- -- ------------------------

4. 処理を改善する

データベースのパフォーマンスを向上させるには、次のことを行う必要があります。データベースをさらに改善するには、ここで示す例は、ユーザーのデフォルトの表スペースと一時表スペースを変更し、データベースをアーカイブ・ログ・オペレーティング・モードに変更することです。

ox1> 詳細 cdb4_perf.sh
#!/bin/sh
#-----------------BEGIN--------------- ----------------------------------
ORACLE_SID=oracyx エクスポート ORACLE_SID
/data4/ora817/app/oracle / product/8.1.7/bin/sqlplus external/cyx << EOF
spool /data4/ora817/cyx/cdb/crdb4.log

ユーザー sys 一時表領域を変更する TEMP;
ユーザー システムのデフォルト表領域を変更する TOOLS;
alterユーザーシステムの一時テーブルスペース TEMP;

通常のシャットダウン;
スタートアップマウント pfile='/data4/ora817/app/oracle/product/8.1.7/dbs/initoracyx.ora';
データベースアーカイブログの変更;
データベースオープンの変更
システム アーカイブ ログ開始の変更;
システム スイッチ ログファイルの変更;

切断
スプール オフ
終了
EOF
#------END------ - -------------------------------------------------

概要:

さて、ここまでは新しいデータベースを作成しますが、このプロセスについては理解できたでしょうか?データベースの論理構造については誰もがよく知っているため、データベースの構築プロセス中に考慮する必要があるのは、データベースの物理ストレージです。これは、特定のアプリケーションに関連するものであり、たった 1 ~ 2 つの文で説明することはできません。みんなで一緒に話し合えますように…


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート