CodeZine(コードジン)

特集ページ一覧

省リソースで軽快に動作する組込向けデータベース「Ultra Light」

SQL Anywhereの魅力を探る 6

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2007/08/27 18:40

目次

3.3. その他

3.3.1. ユーティリティコマンド

 Ultra Lightには、開発や管理を助けるさまざまなユーティリティコマンドが存在する(開発用のものであるので、Windows上で動作する)。大抵の機能はSybase CentralからGUIでも可能であるが、コマンドで実行できれば便利な場合もあるだろう。主要なコマンドを紹介しよう。

  • ulcreate / ulinit
  • DBファイルを作成する。ulcreateは、オプションに指定された設定でDBファイルを作成する。一方、ulinitは、既存のSQL Anywhereのデータベースを雛形としてUltra Lightデータベースを作成(コンバート)する。
     
  • dbisql
  • DBファイルに接続して、SQLを実行するGUIツール。SQL Anywhereと共通である。
     
  • ulsync
  • DBに対して、同期を実行する。
    このように、ulcreateやdbisqlやulsyncがあれば、(C#などで)プログラムを書くことなく、SQL文レベルでUltra Lightのデータベース機能を試すことが可能だ。
     
  • ulinfo
  • DBの設定情報を出力する。
     
  • uleng10 / ulstop
  • 本稿では説明を省略したが、Ultra Lightのデータベース「サーバ」を起動・停止する。
     
  • ulload / ulunload / ulunloadold
  • DBからデータをアンロード・ロードする。出力はXML形式となる。なお、Ultra Light 9以前のファイルは、ulunloadoldでアンロード可能なので、これを使って、旧バージョンから新バージョンへアップグレードできる。
     
    $ ulunload -c DBF=sample.udb sample.xml
    $ ulload -c DBF=foo.udb sample.xml
    
     
    上記コマンド例のように利用する。

3.3.2. Ultra Lightデータベースのバックアップ

 Ultra Lightにはトランザクションログファイルがないので、バックアップ対象はデータベースファイルだけである。バックアップツールのようなものはないので、OSのコマンドでファイルをコピーする。手順としては、(i)DBを終了させて(キャッシュ上にあるかもしれない変更をファイルに反映させる)、 (ii)データベースファイル(*.udb)のコピー、となる。

 なお、Mobile Link同期と共にUltra Lightを使っていれば、同期がバックアップを兼ねるので都合が良い。

3.3.3. 接続時のセキュリティ

 Ultra Lightの接続時に、デフォルトでは認証は不要だが、ユーザーIDとパスワードを設定して認証を必須とすることもできる。なお、このユーザーID・パスワードは接続時の認証のためだけのものであり、テーブルなどへのアクセス権としての機能はUltra Lightにはない。

 Ultra Lightデータベースを作成する際、ユーザーID「DBA」・パスワード「SQL」のユーザーが自動的に作られる。接続時にユーザーIDとパスワードが省略されるとこのユーザーIDとパスワードが使われる。よって、接続時に認証情報を渡さなくても自動的にユーザーID「DBA」で接続される。

 そこで、明示的に認証するには新たなユーザーを作成して、「DBA」ユーザーを削除すればよい。このような管理作業はSybase Centralから行う。プログラムしたいのであれば、ULConnection#GrantConnectToULConnection#RevokeConnectFromから可能だ。

3.3.4. 暗号化

 Ultra Lightも、SQL Anywhereと同様にデータベースファイルの暗号化やMobile Link同期通信の暗号化に対応する。

  • データベースファイルの暗号化
  • 128bitのAESに対応する。データベースファイルを作成するときに鍵を指定するとデータベースファイルは暗号化され、以後、鍵を指定しないと接続できないようになる。データベースファイルの暗号化はDB作成時に指定する。平文で作成されたDBファイルを、暗号化されたファイルへ変換することはできない。接続方法については上記接続の例で、既に述べた。
     
  • Mobile Link 同期通信の暗号化
  • TLSやHTTPSによる暗号化通信ができる。同期クライアントのストリームタイプとしてULStreamType.TLSやULStreamType.HTTPSを指定し、証明書など必要なパラメータを設定する。

次回

 次回は、データベースの同期するためのミドルウェア「Mobile Link」の概要を紹介する。社内評価や開発を目的としたSQL Anywhereの利用であれば、無償のDeveloper Editionを利用できるので、ぜひ一度、実際に試していただきたい。



  • LINEで送る
  • このエントリーをはてなブックマークに追加

バックナンバー

連載:SQL Anywhereの魅力を探る

もっと読む

著者プロフィール

  • 森脇 大悟(モリワキ ダイゴ)

    1974年生まれ。神奈川県川崎市出身。京都大学理学部物理学科卒業。同大学院 修士課程中退後、有限会社グルージェント(現・株式会社グルージェント)入社。 SIとして金融や物流システムを手がける。2003年アイエニウェア・ソリューションズ株式会社入社。エンジニアとして製品の導入支援やコンサルティング業...

あなたにオススメ

All contents copyright © 2005-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5