2011-12-08
■[Oracle] MacBookAir で Swingbench を使ってみる(その3)
Order Entry Install Wizardで作成したテーブルとインデックスの情報です。
SQL> select table_name from user_tables; TABLE_NAME ------------------------------ WAREHOUSES PRODUCT_INFORMATION PRODUCT_DESCRIPTIONS ORDERENTRY_METADATA CUSTOMERS ORDER_ITEMS ORDERS INVENTORIES LOGON 9行が選択されました。 SQL> select table_name, index_name from user_indexes; TABLE_NAME INDEX_NAME ------------------------------ ------------------------------ WAREHOUSES WAREHOUSES_PK WAREHOUSES WHS_LOCATION_IX PRODUCT_INFORMATION PRODUCT_INFORMATION_PK PRODUCT_INFORMATION PROD_SUPPLIER_IX PRODUCT_INFORMATION PROD_CATEGORY_IX PRODUCT_DESCRIPTIONS PRD_DESC_PK PRODUCT_DESCRIPTIONS PROD_NAME_IX ORDER_ITEMS ORDER_ITEMS_PK ORDER_ITEMS ITEM_ORDER_IX ORDER_ITEMS ITEM_PRODUCT_IX ORDERS ORDER_PK ORDERS ORD_SALES_REP_IX ORDERS ORD_CUSTOMER_IX ORDERS ORD_ORDER_DATE_IX ORDERS ORD_WAREHOUSE_IX INVENTORIES INVENTORY_PK INVENTORIES INV_PRODUCT_IX INVENTORIES INV_WAREHOUSE_IX CUSTOMERS CUSTOMERS_PK CUSTOMERS CUST_ACCOUNT_MANAGER_IX CUSTOMERS CUST_LNAME_IX CUSTOMERS CUST_EMAIL_IX
SQL> select table_name,num_rows,avg_row_len,blocks from user_tables; TABLE_NAME NUM_ROWS AVG_ROW_LEN BLOCKS ------------------------------ ---------- ----------- ---------- WAREHOUSES 1000 27 60 PRODUCT_INFORMATION 1000 177 60 PRODUCT_DESCRIPTIONS 1000 215 60 ORDERENTRY_METADATA 4 24 60 CUSTOMERS 4000000 63 40288 ORDER_ITEMS 13504287 20 48508 ORDERS 4500000 48 40192 INVENTORIES 901096 14 23152 LOGON 1000000 13 4000
はい。手抜き更新です。
2011-12-07
■[Oracle] Oracle SQL Developer 3.0 (3.0.04.34)をOELにインストールする。
オラクル社が無償で提供しているデータベース開発用ツールをOEL(Oracle Enterprise Linux)に導入し、MacBookAirから使ってみようと思います。
Oracle SQL Developer 3.0 ダウンロード
最新バージョンの3.0を上記のURLからダウンロードし、OELにインストールします。
MacBookAir$ scp Desktop/sqldeveloper-3.0.04.34-1.noarch.rpm oracle@192.168.11.41:/tmp oracle@192.168.11.41's password: sqldeveloper-3.0.04.34-1.noarch.rpm 100% 147MB 5.5MB/s 00:27 MacBookAir(~)$ ssh -X oracle@192.168.11.41 oracle@192.168.11.41's password: Last login: Wed Dec 7 23:01:43 2011 from 192.168.11.3 [oracle@rac01 ~]$ sudo rpm -Uvh /tmp/sqldeveloper-3.0.04.34-1.noarch.rpm [sudo] password for oracle: 準備中... ########################################### [100%] 1:sqldeveloper ########################################### [100%] [oracle@rac01 ~]$
次にJDK6がすでにインストールされていることを確認し、インストールされていない場合は以下からダウンロードして導入します。
Java SE Development Kit 6u29 download page
[oracle@rac01 tmp]$ sudo rpm -Uvh /tmp/jdk-6u29-linux-x64-rpm.bin [sudo] password for oracle: /tmp/jdk-6u29-linux-x64-rpm.bin: RPM パッケージ(またはパッケージのリスト)ではありません: [oracle@rac01 tmp]$ sudo sh /tmp/jdk-6u29-linux-x64-rpm.bin Unpacking... Checksumming... Extracting... UnZipSFX 5.50 of 17 February 2002, by Info-ZIP (Zip-Bugs@lists.wku.edu). inflating: jdk-6u29-linux-amd64.rpm inflating: sun-javadb-common-10.6.2-1.1.i386.rpm inflating: sun-javadb-core-10.6.2-1.1.i386.rpm inflating: sun-javadb-client-10.6.2-1.1.i386.rpm inflating: sun-javadb-demo-10.6.2-1.1.i386.rpm inflating: sun-javadb-docs-10.6.2-1.1.i386.rpm inflating: sun-javadb-javadoc-10.6.2-1.1.i386.rpm 準備中... ########################################### [100%] 1:jdk ########################################### [100%] Unpacking JAR files... rt.jar... jsse.jar... charsets.jar... tools.jar... localedata.jar... plugin.jar... javaws.jar... deploy.jar... Installing JavaDB 準備中... ########################################### [100%] 1:sun-javadb-common ########################################### [ 17%] 2:sun-javadb-core ########################################### [ 33%] 3:sun-javadb-client ########################################### [ 50%] 4:sun-javadb-demo ########################################### [ 67%] 5:sun-javadb-docs ########################################### [ 83%] 6:sun-javadb-javadoc ########################################### [100%] Java(TM) SE Development Kit 6 successfully installed. Product Registration is FREE and includes many benefits: * Notification of new versions, patches, and updates * Special offers on Oracle products, services and training * Access to early releases and documentation Product and system data will be collected. If your configuration supports a browser, the JDK Product Registration form will be presented. If you do not register, none of this information will be saved. You may also register your JDK later by opening the register.html file (located in the JDK installation directory) in a browser. For more information on what data Registration collects and how it is managed and used, see: http://java.sun.com/javase/registration/JDKRegistrationPrivacy.html Press Enter to continue..... Done.
インストールされたjavaのバージョンを確認します。ちゃんと1.6が入っていますね。
[oracle@rac01 tmp]$ /usr/java/jdk1.6.0_29/bin/java -version java version "1.6.0_29" Java(TM) SE Runtime Environment (build 1.6.0_29-b11) Java HotSpot(TM) 64-Bit Server VM (build 20.4-b02, mixed mode)
では、sqldeveloperを起動してみましょう。
[oracle@rac01 ~]$ sqldeveloper Oracle SQL Developer Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. Type the full pathname of a J2SE installation (or Ctrl-C to quit), the path will be stored in ~/.sqldeveloper/jdk
J2SEのパスの入力を求められましたので、$HOME/.sqldeveloper/jdkにJDK6へのパスを記載します。
[oracle@rac01 ~]$ cat $HOME/.sqldeveloper/jdk /usr/java/jdk1.6.0_29
もう一度、sqldeveloperを実行するとGUIが起動してきました。sshでXをトネリングするときは、-Xオプションを忘れないで指定する必要がありますので。
MacBookAir$ ssh -X oracle@192.168.11.41 oracle@192.168.11.41's password: Last login: Thu Dec 8 00:00:40 2011 from 192.168.11.3 [oracle@rac01 ~]$ sqldeveloper Oracle SQL Developer Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. :
SQL Developerは便利なようですが、あまり使ったことがないので少し勉強してみようかと。
2011-12-06
■[Oracle] OEL上のSQL*Plusでrlwrapをyumで導入する
Oracle使いにとってSQL*Plusは必須のツールですが、逐次SQLコマンドを入力していかなければならいので、タイポとか繰り返すとキーッとなることが多いんじゃないでしょうか。そんなSQL*Plusにコマンド履歴と編集機能を提供してくれるrlwrapという便利なユーティリティーがあるので、Oracle Enterprise Linuxにyumを使ってさくっと導入する方法を紹介したいと思います。
OELでyumを使用できるようにする方法については、以下の更新を参照してください。この設定をおこなっている前提で進めます。
Oracle Enterprise Linuxでyumリポジトリを使用可能にする。
まずは、Readlineライブラリをインストールします。このライブラリは過去に実行したコマンドラインの一覧を保持するとともに、過去に実行したコマンドを呼び出し、編集する機能を提供してくれます。
[root@rac01 ~]# yum install readline readline-devel ncurses-devel Loaded plugins: rhnplugin, security This system is not registered with ULN. ULN support will be disabled. Excluding Packages in global exclude list Finished Setting up Install Process Package readline-5.1-3.el5.x86_64 already installed and latest version Package readline-5.1-3.el5.i386 already installed and latest version Resolving Dependencies --> Running transaction check ---> Package ncurses-devel.i386 0:5.5-24.20060715 set to be updated ---> Package ncurses-devel.x86_64 0:5.5-24.20060715 set to be updated ---> Package readline-devel.i386 0:5.1-3.el5 set to be updated --> Processing Dependency: libtermcap-devel for package: readline-devel ---> Package readline-devel.x86_64 0:5.1-3.el5 set to be updated --> Running transaction check ---> Package libtermcap-devel.x86_64 0:2.0.8-46.1 set to be updated --> Finished Dependency Resolution Dependencies Resolved ==================================================================================================== Package Arch Version Repository Size ==================================================================================================== Installing: ncurses-devel i386 5.5-24.20060715 ol5_u7_base 1.6 M ncurses-devel x86_64 5.5-24.20060715 ol5_u7_base 1.7 M readline-devel i386 5.1-3.el5 ol5_u7_base 146 k readline-devel x86_64 5.1-3.el5 ol5_u7_base 160 k Installing for dependencies: libtermcap-devel x86_64 2.0.8-46.1 ol5_u7_base 56 k Transaction Summary ==================================================================================================== Install 5 Package(s) Upgrade 0 Package(s) Total download size: 3.7 M Is this ok [y/N]: y Downloading Packages: (1/5): libtermcap-devel-2.0.8-46.1.x86_64.rpm | 56 kB 00:00 (2/5): readline-devel-5.1-3.el5.i386.rpm | 146 kB 00:00 (3/5): readline-devel-5.1-3.el5.x86_64.rpm | 160 kB 00:01 (4/5): ncurses-devel-5.5-24.20060715.i386.rpm | 1.6 MB 00:05 (5/5): ncurses-devel-5.5-24.20060715.x86_64.rpm | 1.7 MB 00:05 ---------------------------------------------------------------------------------------------------- Total 250 kB/s | 3.7 MB 00:15 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : libtermcap-devel 1/5 Installing : ncurses-devel 2/5 Installing : ncurses-devel 3/5 Installing : readline-devel 4/5 Installing : readline-devel 5/5 Installed: ncurses-devel.i386 0:5.5-24.20060715 ncurses-devel.x86_64 0:5.5-24.20060715 readline-devel.i386 0:5.1-3.el5 readline-devel.x86_64 0:5.1-3.el5 Dependency Installed: libtermcap-devel.x86_64 0:2.0.8-46.1 Complete!
次にEPEL(Extra Packages for Enterprise Linux)をインストールします。このパッケージは、Red Hat Enterprise Linux 用の比較的マイナーな拡張パッケージの集合のことで、このパッケージ群に目的のrlwrapがあります。
[root@rac01 ~]# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm を取得中 警告: /var/tmp/rpm-xfer.In5nWp: ヘッダ V3 DSA signature: NOKEY, key ID 217521f6 準備中... ########################################### [100%] 1:epel-release ########################################### [100%]
これでyumを使ってrlwrapを簡単に導入できるようになります。
[root@rac01 ~]# yum install rlwrap Loaded plugins: rhnplugin, security This system is not registered with ULN. ULN support will be disabled. epel | 3.7 kB 00:00 epel/primary_db | 3.9 MB 00:00 Excluding Packages in global exclude list Finished Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package rlwrap.x86_64 0:0.37-1.el5 set to be updated --> Finished Dependency Resolution Dependencies Resolved ==================================================================================================== Package Arch Version Repository Size ==================================================================================================== Installing: rlwrap x86_64 0.37-1.el5 epel 92 k Transaction Summary ==================================================================================================== Install 1 Package(s) Upgrade 0 Package(s) Total download size: 92 k Is this ok [y/N]: y Downloading Packages: rlwrap-0.37-1.el5.x86_64.rpm | 92 kB 00:00 警告: rpmts_HdrFromFdno: ヘッダ V3 DSA signature: NOKEY, key ID 217521f6 epel/gpgkey | 1.7 kB 00:00 Importing GPG key 0x217521F6 "Fedora EPEL <epel@fedoraproject.org>" from /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL Is this ok [y/N]: y Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : rlwrap 1/1 Installed: rlwrap.x86_64 0:0.37-1.el5 Complete!
これで導入は完了。
あとは、次のようにSQL*Plusを実行するだけ。
[oracle@rac01 ~]$ rlwrap sqlplus /nolog
CTRL+P、CTRL+Nや↑↓で履歴を行ったり来たり。CTRL+Aで行頭に戻ったり、CTRL+Dで一文字削除。CTRL+Kで一行削除など...これでSQL*Plusを自由自在に操れるでしょう。もちろんRMANでも使えますよ。
oracleユーザーの「.bash_profile」にこんな感じでエイリアスと登録しておくとよいでしょう。
alias rlsqlplus='rlwrap sqlplus /nolog' alias rlrman='rlwrap rman'
以上です。
2011-12-05
■[Oracle] MacBookAir で Swingbench を使ってみる(その2)
前回は、ウィザードを使用してオーダーエントリーのスキーマとデータを作成しましたが、作成された表領域名を確認してみたところファイルシステム上に作成されていることがわかりました。
SQL> select * from dba_data_files where tablespace_name = 'SOE';
FILE_NAME
--------------------------------------------------------------------------------
FILE_ID
----------
TABLESPACE_NAME
--------------------------------------------------------------------------------
BYTES BLOCKS STATUS RELATIVE_FNO AUTOEXTEN
---------- ---------- --------------------------- ------------ ---------
MAXBYTES MAXBLOCKS INCREMENT_BY USER_BYTES USER_BLOCKS ONLINE_STATUS
---------- ---------- ------------ ---------- ----------- ---------------------
/u01/app/oracle/product/11.2.0/dbhome_1/dbs/soe.dbf
5
SOE
3771727872 460416 AVAILABLE 5 YES
3.4360E+10 4194302 8192 3770679296 460288 ONLINE
Oracle ASM上にデータベースを作成しているので、ファイルシステムは使ってほしくありません。他のデータファイルと同じファイルパスでOracle ASM上に作成する方法を確認してみます。
まずは、作成してしまった表領域、スキーマ、データを削除します。
Select Task
「Drop the Order Entry Schema」を選択し、Nextをクリック。
Database Details
前回の更新と同様に設定します。データベースへの接続設定を行います。
Schema Details
削除するユーザー名と表領域を指定。
All Details Entered
「Finish」をクリックすると削除が始まります。
Dropping Schema
今度は以下の設定でもう一度作成します。データファイル名に配置したいASMディスクグループ名のみを指定することで、指定した表領域名で指定の場所に作成されます。
- 表領域名:SOE
- データファイル名:+ASMDG01
アラートログを参照すると、実際に実行されているDDLを確認することができます。
[oracle@rac01 ~]$ adrci ADRCI: Release 11.2.0.2.0 - Production on 月 12月 5 00:03:27 2011 Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved. ADR base = "/u01/app/oracle" adrci> show alert : create tablespace SOE datafile '+ASMDG01' size 3277M autoextend on next 64M maxsize unlimited extent management local uniform size 1M segment space management auto :
ウィザードが完了したした後にデータファイル名を確認すると、今度は意図したとおりに「ASMDG01」に作成されていました。
SQL> select * from dba_data_files where tablespace_name = 'SOE';
FILE_NAME
--------------------------------------------------------------------------------
FILE_ID
----------
TABLESPACE_NAME
--------------------------------------------------------------------------------
BYTES BLOCKS STATUS RELATIVE_FNO AUTOEXTEN
---------- ---------- --------------------------- ------------ ---------
MAXBYTES MAXBLOCKS INCREMENT_BY USER_BYTES USER_BLOCKS ONLINE_STATUS
---------- ---------- ------------ ---------- ----------- ---------------------
+ASMDG01/orcl/datafile/soe.267.769041043
5
SOE
3436183552 419456 AVAILABLE 5 YES
3.4360E+10 4194302 8192 3435134976 419328 ONLINE
次回はSwingBenchを実行してみます。
- 作者: 福田武志
- 出版社/メーカー: ソフトバンク クリエイティブ
- 発売日: 2007/03/28
- メディア: 単行本
- 購入: 4人 クリック: 101回
- この商品を含むブログ (17件) を見る
2011-12-04
■[Oracle] MacBookAir で Swingbench を使ってみる。(その1)
Oracleデータベースのベンチマークツールとして有名なSwingbenchを使ってみます。
Javaで動作するのでMacでも実行可能で、データ生成からベンチマークまで実行するためのツールが提供されています。
まずは、Swingbenchで使用するテストデータを作成します。
今回ダウンロードしたのは「swingbench240838.zip」です。解凍後、bin/oewizardをダブルクリックするとウィザードが起動します。
Welcome to Order Entry Install Wizard
オーダーエントリーシステムをシュミレートするためのスキーマおよびデータ作成を開始します。
Select Task
ここでは「Create the Order Entry Schema ( User, Tables, Indexes, Data etc ) 」を選択します。
Database Details
次の項目を設定します。Connect Stringにはデータベースが動作するサーバーのIPアドレスと、サービス名(SID)を入力します。
- Connect String
- Connection Type
- DBA username
- DBA password
Schema Details
オーダーエントリーのスキーマを作成するユーザー名、パスワード、表領域名、データファイル名を指定します。あと、パーティション機能、BIGFILE形式のテーブルスペースとするかどうか、圧縮機能を有効にするかどうかの選択ができます。
Sizing Details
作成するデータのサイズを設定します。大きな領域を用意していないので、1GBとしました。
All Details Entered
データロードの並列度を設定します。CPUの2倍までに設定するのが適当です。
作成が終わるとこの画面が表示されます。約20分ほどかかりました。
ただ、一つ問題が。。。次回に続きます。


















