トップ 一覧 置換 検索 ヘルプ RSS ログイン

DB2 操作コマンドの変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
http://fujishinko.exblog.jp/7853530/
http://db2watch.com/wiki/index.php/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8

!!!基本的な概念と操作
!!概念
http://www.google.co.jp/imgres?imgurl=http://image.itmedia.co.jp/ait/articles/0408/04/r13fig02.gif&imgrefurl=http://www.atmarkit.co.jp/ait/articles/0408/04/news104.html&h=173&w=351&tbnid=tCmnSHm_-rqRZM:&zoom=1&docid=-7j-XM94izhApM&hl=ja&ei=XYd7VYyPEoa6mAX-loKwDw&tbm=isch&ved=0CBwQMygAMABqFQoTCMyx_bHCi8YCFQYdpgodfosA9g&biw=1641&bih=946
{{img ss01.gif}}


!!CLP起動
    #su - db2inst1
    $db2
    db2 =>

!!データベースへの接続
    db2 => CONNECT TO database name

!!データベースからの切断
    db2 => CONNECT reset

!!!ユーザの作成
OSのユーザを利用する。そのためOracleのように create userなどのコマンドは存在しない。ただし、データベースへの接続権限は付与する必要がある。
    db2 => connect reset
    db2 => connect to データベース
    db2 => grant connect on database to user ユーザ名

!!!データベース管理
!!データベース操作
!データベースの一覧表示
    db2 => LIST DB DIRECTORY
もしくは
    db2 => LIST DATABASE DIRECTORY

!データベースの作成
 db2 => CREATE DATABASE sample
文字コードやデータ保存場所を指定することもできる。
    db2 => CREATE DATABASE sample \
    AUTOMATIC STORAGE YES ON '/home/db2inst1' \
    DBPATH ON '/home/db2inst1' \
    ALIAS sample_a \
    USING CODESET UTF-8 \
    TERRITORY JP \
    COLLATE USING SYSTEM \
    PAGESIZE 4096 WITH 'comment'

!!スキーマ操作
!スキーマの一覧表示
  SELECT SCHEMANAME,OWNER  FROM SYSCAT.SCHEMATA

!スキーマの作成
 create schema スキーマ名 AUTHORIZATION ユーザ名

!スキーマの削除
 DROP SCHEMA スキーマ名 RESTRICT

!!テーブル操作
!テーブルの一覧表示
    db2=> LIST TABLES

!テーブルの作成
    db2=> CREATE TABLE DB2INST1.XML_TEST \
    (ID BIGINT NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1, NO CACHE ), \
    LASTMODIFIED TIMESTAMP NOT NULL , \
    DOCUMENT XML)

!テーブル定義表示
    db2=> DESCRIBE TABLE table name

!!その他の操作
!データベースのバックアップ
    db2=> BACKUP DB database name TO /backup

!接続を強制切断
※バックアップを取る際に使用
    db2=> FORCE APPLICATION ALL

!リストア
    db2=> RESTORE DB database name FROM /backup

!エクスポート
    db2=> EXPORT TO /tmp/test.ixf OF IXF \
    MESSAGES /tmp/test.log select * from xml_test

DEL:CSV形式
ASC:区切り文字無し
IXF:の型情報なども含むバイナリー形式

!インポート
    db2=> IMPORT FROM /tmp/test.csv OF IXF \
    COMMITCOUNT 1000 \
    MESSAGES /tmp/test.log
    INTO xml_test

!!ロック状態の解除
!ロック情報の取得
 $ db2 connect to データベース名
 $ db2 "get snapshot for locks on データベース名"

!DB2へ接続しているアプリケーションの把握
 $ db2 list application
アプリケーションのハンドルを取得したら、
 $ db2 "force application(アプリケーションハンドル)"
でアプリケーションを強制的に切断する。
もし、全てのプロセスを切断する場合は
 db2 "force application all"



{{category2 データベース,DB2}}