第1回 データベースとインスタンス
本連載では、Oracleの管理やチューニングなど、一歩踏み込んだ運用術を紹介し、「Oracleマイスター」*を目指していただく。今回は運用の最も基本となるデータベースの起動/終了を通して、Oracleの「インスタンス」という概念を解説する。
*マイスター:Meister
英語のマスター(master)に相当するドイツ語で、「親方」「名人」などの意
|
今回の主な内容
|
さかいひろあき(h.sakai@home.email.ne.jp)
2001/1/23
今回からOracleのデータベース管理の基礎についてのお話を始めたいと思います。
Oracle on Linuxの発売以降、Oracleもずいぶん手軽に使えるようになってきましたが、ある程度本格的に業務などに使うには、やはりPCクライアントなどとは違って、それなりの知識と準備が必要です。かといって、それほど大きく構える必要はありません。ちょっとしたコツや工夫をするだけで、十分実用に堪えるデータベースにすることができます。
本連載は、主に以下のような方を想定して書いていきたいと思います。
- 自分の興味や必要にせまられて、Oracleのインストールをやってみた
- インストーラで作られるデフォルトデータベースを少しいじってみた
- 経験はないが、これから本格的に仕事に使ってみたい
こうした方々を対象に、運用のためのコツやチューニング方法を紹介し、「Oracleマイスター」を目指していただきたいと思います。
ここでは「Oracleマイスター」を以下のように定義します。
プロフェッショナルまではいかないが、Oracleデータベースの基本的な知識を持ち、小規模なデータベースの運用管理が行える人
もちろんすでにOracleの運用に携わっている方にも、備忘録的に使ってもらえるように書いていきたいと思います。また、特に断らなければOSはRed Hat系のLinux(Kernel 2.2.14以降)、Oracleは最新版ではありませんが、一番普及していて運用に使われている(と思われる)Oracle 8.0.5を前提として話を進めていきます。ただし、話の内容によってはOracle 8i(8.1.5以降)についても随時触れていきたいと思います。
さて、「Oracleマイスター」であるデータベース管理者には次のような役割があります。
- Oracleのインストール
- データベースの作成
- データベースの起動・停止
- データベースのバックアップ
- 障害発生時のリカバリー
- 使用者(ユーザー)のセキュリティ管理
どれもOracleマイスターには重要な仕事であり、どれが一番とはいえません。逆にいうと、Oracleマイスターには上記をそれぞれ均等に考慮しながら、業務要件に合わせてデータベースを設計・管理・運用していく能力が求められるのです。
Oracleマイスターとなるには、なにはともあれ手元にOracleがインストールされたマシンがなくてはなりません。しかし、ここでは詳しいインストール方法やOSの設定についてはほかに譲ることにします。各種書籍やOracle購入元のサポート、またいろいろなホームページなどを参照するとよいでしょう。ちなみに、私の知っている範囲では
Oracle On Linux 奮戦記
http://member.nifty.ne.jp/m_tada/
知って得するOracle8
http://www.ee.e-mansion.com/~egami/
などのホームページが参考になります。
では、早速Oracleマイスターへの道を歩き始めましょう。まずは最も基本となるデータベースの起動と停止です。Oracleをインストールしたときにデフォルトデータベースを作成した人は、実際に以下のように起動・停止をしてみてください。普段はGUIのツールを使っている人も、理解を深めるためにもコマンドでの起動・停止をやってみてください。
1.まず、インストール時に指定したOracle用の管理IDでLinuxにログインします。
$ su - oracle |
2.環境変数ORACLE_SIDとORACLE_HOMEを確認します。
$ echo $ORACLE_SID $ORACLE_HOME |
“SFO”は私が付けたインスタンス名です。またORACLE_HOMEはOracleがインストールされているディレクトリを指定しています。もし何も表示されなければ、
$ export ORACLE_SID=SFO |
と入力して指定します。もちろん内容はそれぞれデータベースを作成したときの値を使用してください。ORACLE_SIDとORACLE_HOMEについては後述します。
3.次にデータベースを起動します。シェルからsvrmgrlと入力し、続いてconnect internal、startupと入力します。
$ svrmgrl |
- svrmgrl
- サーバマネージャと呼ばれるコマンドです。主にインスタンスの起動・停止を行うときに使用します。
- connect internal
- 初期インスタンスに接続します。ここではコマンドを打ち始める前のおまじないと思ってください。
- startup
- 実際にデータベースを立ち上げるコマンドです。
4.次にデータベースを終了します。同じようにsvrmgrlを起動してconnect internalしてから、shutdownと入力します。
$ svrmgrl |
データベースの勉強を始めるにあたって、最初に出てくる非常になじみにくい言葉が“インスタンス”です。これは、おおざっぱにいうとデータベースシステムのまとまりのことであり、データベースを起動・停止する単位を表します。管理者の立場から見ると、1つのデータベース管理単位となります。UNIXの世界では環境変数「ORACLE_SID」で表されます。
インスタンスは、同じマシンの中に複数存在させることができます。それどころか環境変数を変更することにより、Oracleの異なったバージョンを共存させることもできます。
バージョンを管理するための環境変数が“ORACLE_HOME”です。このORACLE_HOMEはOracleがインストールされているディレクトリを指定します。上記の例では/oracle/app/product/8.0.5にOracle 8.0.5がインストールされていることを示しています。もし上記のマシンにOracle 8.1.6がインストールされているとすると、以下のように環境変数を変えるだけで8.1.6のインスタンスを扱うことができます。
$ export ORACLE_HOME=/oracle/app/product/8.1.6 |
ただし、svrmgrlがおかれているディレクトリのパスには気を付けなければなりません。
さて、データベースの起動と停止はいかがでしょうか? 簡単だったと思います。簡単ではありますがsvrmgrl、そしてstart/shutdownにはいろいろな含蓄そしてドラマ(?)があるのです。まずは幾度かインスタンスの起動・停止を実際に行ってみましょう。
次回は、この「インスタンス」を構成する要素についてお話ししたいと思います。
| 連載 Oracleマイスター養成講座 |
| Linux Squareフォーラム データベース関連記事 |
| 連載:快速MySQLでデータベースアプリ!(全11回) 軽快な動作で知られるRDBMS、MySQLでDBアプリの構築を行う。MySQLのインストールに始まり、PerlやRubyなどのスクリプトでデータベースを操作する方法までを完全解説 |
|
| 連載:今から始める MySQL入門(連載中) 定番のLAMP(Linux+Apache+MySQL+PHP)構成でWebアプリケーション開発に挑戦! サンプルアプリの構築を進めながら、基礎知識や操作方法について詳しく解説する |
|
| 連載:Oracleマイスター養成講座(全6回) 本連載では、Oracleの管理・チューニング方法を紹介していく。これからOracleを始める人、そしてOracleをより深く理解したい人のための、一歩踏み込んだ実用講座 |
|
| 連載:DB2マイスター養成講座(全7回) 本連載では、DB2 UDBの実践的な運用・管理方法を紹介していく。DB2を利用するうえで必要な知識を、実運用を前提にDB2のプロが解説 |
|
| 特集:エンタープライズ市場に向かうMySQL
5.0[前編] MySQL 5.0の新機能をアルファ版でチェック 1月に公開された5.0アルファ版は大幅に拡張されており、エンタープライズ市場への進出を予感させる |
|
| 特集:Linuxで動くリレーショナルデータベース・カタログ データベースサーバのOSとしてLinuxを採用するケースが増えている。Linuxで動作する7つの主なリレーショナルデータベースを紹介する。製品導入の際の参考にしてほしい |
|
|
ホワイトペーパー(TechTargetジャパン)
- natテーブルを利用したLinuxルータの作成 (2010/2/9)
natテーブルを用い、市販のブロードバンドルータと同等かそれ以上の機能を備える「Linuxルータ」を作成してみましょう - Web監視機能を賢く利用する (2010/2/2)
プロセスの稼働確認だけでは、サービスが正常に提供できているか分からないことも。そこで使いたいのがWeb監視です - ものいわぬOpenLDAPサーバのログ管理 (2010/1/20)
不満をいわないコンピュータが相手だからこそ、常にログが確認できる状態を整備することが重要になります - ネットワークアクセス権も放棄せよ (2010/1/12)
新しいセキュリティ機構「disablenetwork」を提案する1通のメールから始まった議論が、LSMも巻き込む話へと拡大しました
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
- - PR -
- - PR -
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | 企業の仮想化に足りない“発想”とは? 仮想化運用管理のキモは意外なところに! New! |
| ◆ | 操作もマニュアルも分かりやすい! ユーザー視点で開発されたPC管理ツール New! |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |

| ◆ | セキュリティを知り尽くす上野氏が登壇! @ITメールソリューションLive! in Tokyo |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
| ◆ | 世界に通用するストレージの作り方とは? 製品に込めた思いを富士通の開発者に聞く |

| ◆ | OSSで手間も時間も、障害も減った―― 「マピオンの事例」オープンソース活用法 |
| ◆ | 「ノートPCの持ち出し禁止」で大丈夫? 情報漏えいを防ぐ管理手法とインフラは? |
| ◆ | 1日の処理を1秒に――MySQLの達人が語る 「コスト削減」できるチューニング |

| ◆ | ドキュメント作成を自動化して、SEの作業 効率を大幅アップ! Visio 2007の魅力 |
| ◆ | 急速に広がるHyper-Vでのサーバ仮想化 そのベストプラクティスをデルが解説 |
| ◆ | @IT主催セミナーで語られた、「担当者に 求められるセキュリティ対策」をレポート |

| ◆ | @IT「Windows 7」 特設サイトオープン! 最新情報・移行ノウハウを公開しています |






