開発用Oracleデータベース作成メモ
開発用DB作成依頼が増えてきたのでメモ
windowsサーバにDBCAを使ってデータベースの作成を行う場合の話です。
事前準備
基本設定を確認
データベースキャラクタセットは後で変更できないので注意。
必ず本番環境に合わせる。
適当でいい場合
JA16SJISTILD、多言語対応アプリの場合はUTF-8
- SID
プロジェクト名なんかを元に適当に命名、
マシンに1インスタンスしか乗せない場合はホスト名と同じにするとか。
サーバの状態の確認
- 空きメモリ
- 空きディスクサイズ
- データファイル作成先ディレクトリ
- リスナーの構成(既に構成されている場合)
その他要件の確認
- 同時接続数はどれぐらいか(開発者の人数)
- 言語、地域設定等あれば
データベースの作成
Database Configuration Assistant を起動
データベースの作成ウィザードで次の通り進める
- データベースタイプは「汎用」を選択
- SID は事前確認の通り
- サーバー構成は「専用サーバ構成」を選択
- SYS, SYSTEM等アカウントのパスワードは適当で(後で必ず変えてもらう)
- メモリ設定は開発者数(同時接続数)と、サーバの空きメモリ具合を見て決める
- 文字コード設定は事前確認の通り
- 言語設定は要望がなければJAPANESEとかでOK
- フラッシュバック領域は必要なら領域を確保しておく
- ログモードはそのままでOK
- バックアップ計画は適当に
- サンプルスキーマ不要
以上で作成開始
リモート接続テスト
SQL*PLUS
tnsnames.oraを編集して、次を追加
[接続名] = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = [ホスト名])(PORT = [リスナーのポート])) ) (CONNECT_DATA = (SID = [設定したSID]) ) )
SQL>conn sys/[設定したパスワード]@[設定したSID] as sysdba
接続できない場合
- サーバのファイアウォール設定を確認、リスナーの待ちうけポート(デフォルト:1521)を空ける
- 共有サーバ構成になっていないかチェック
(共有サーバの場合は tnsnames.oraの内容を変更)
- sqlnet.oraの内容を確認、ローカルネーミング接続ができるか
エンタープライズマネージャ(Oracle Enterprice Manager 10g Database Control)
サーバーでコンソールを叩いてURLを確認
C:\windows\system32>emctl status dbconsole
ブラウザからアクセスして表示されればOK
ついでにSYSかSYSTEMでログインしてみる。
接続できない場合
完了報告
次のものを完了報告とともに依頼者に引き渡す。
次の結果をEXCELかなんかに貼り付けたファイル
SQL>select * from NLS_DATABASE_PARAMETERS SQL>select name, display_value, description from v$parameter order by name
接続方法メモ
後でいろいろ質問されるのも面倒なので作る。
例:アカウントscottを使ったテスト接続(scottはロック解除しておく)
tnsnames.oraに次の行を追加してくださいな [設定したSID] = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = [ホスト名])(PORT = [ポート番号])) ) (CONNECT_DATA = (SID = [設定したSID]) ) ) SQL*PLUSを起動して次の通り打ち込みます SQL> conn scott/tiger@[設定したSID]
既存アカウントの初期パスワード
- SYS
- SYSTEM
- SYSMAN*1
- DBSNMP
- SCOTT
以上を報告して終わり
表領域とユーザの作成まで頼まれる事が多いけど、それはまた別のエントリにまとめる