Skip to Content
Author's profile photo Atsushi Asano

SQL Anywhere サーバとデータベースの名前の取得方法

目的
このページの目的は、データベースとサーバの名前の割り当て方法を明確にすることです。また、dbeng16コマンドと -nスイッチについても説明します。

概要
データベース・サーバ(データベース・エンジンとも呼ばれる)を起動すると、起動プロセスで必ず名前がサーバに与えられます。
-n コマンドライン・オプションを使用すると、サーバ・スイッチとしてサーバに名前を付けたり、データベース・スイッチとしてデータベースに名前を付けることができます。このスイッチの意味は、その位置によって異なります。サーバ名とデータベース名は、データベースに接続するときにクライアント・アプリケーションが使用する接続パラメータのひとつです。サーバ名は、デスクトップ・アイコンとサーバ・ウィンドウのタイトルバーに表示されます。

SQL Anywhere データベース・サーバの命名の重要性
各SAP SQL Anywhere データベース・システムには、データベースを管理するデータベース・サーバが必要となります。
他のアプリケーションがデータベース・ファイルを直接扱うことはなく、それらの各アプリケーションは、データベース・サーバを通じて通信します。そのため、データベースへの排他的な通信ポータルとしてサーバを扱う必要があるため、データベース・サーバへのアクセスなしでは、データベースにアクセスできません。

ネットワーク上の他のサーバ名と競合を回避する場合や、クライアント・アプリケーションのユーザに意味のある名前を提供する場合に、データベース・サーバ名を指定するができます。サーバが存続している間(つまりシャットダウンされるまで)は指定された名前を維持します。

データベース・サーバ名の割り当て方法
最初のデータベース・ファイルの前に -n データベースサーバ・スイッチを指定することによって、サーバに名前を付けることができます。
例えば、次のコマンド・ラインでは、マウントされた demo データベースを使ってサーバが起動され、そのサーバに Test という名前が付けられます。

dbeng16 -n Test demo.db

データベースを指定せずにデータベース・サーバを起動する場合は、サーバに直接名前を付ける必要があります。次のコマンドを実行すると、データベースを起動せずに Test という名前のサーバを起動します。

dbeng16 -n Test

明示的に名前を指定しなかった場合は、サーバには最初に起動されたデータベースの名前が付けられます。
次のコマンドでは、サーバの名前が指定されていない状態です。デフォルトでは、このサーバに demo という名前が付けられます。起動時に名前が指定されていないと、サーバは  拡張子(.db)を除いたデータベース・ファイル名をサーバ名とします。

dbeng16 demo.db

2 番目の例として、2 つのデータベースを同じサーバで起動する次のコマンドがあるとします。

dbeng16 first_database.db second_database.db

サーバは最初に起動されたデータベースの名前をとるので、この例では、サーバ名は first_database になります。

ータベース名の割り当て方法
-n データベース・スイッチは、データベース名の後ろに指定してデータベースに名前を付けることができます。データベースにユーザが容易に認識できる名前を付ける場合は、サーバでデータベースをマウントするときに明示的にデータベース名を指定します。

サーバでデータベースを起動するときに、データベース・ファイル名(dbf)、データベース名(dbn)、サーバ名(server、以前は’eng’)という 3 つの名前が必要になります。
例えば、次の例について検討します。次のコマンドを使用してxxx.db というデータベースをサーバ上で起動します。

dbeng16 xxx.db

データベースの名前が指定されていないため、データベースは xxx という名前を受け入れます。
サーバの名前も指定されていないため、サーバはデータベースの名前を受け入れて xxx という名前になります。この場合、データベースに接続するために必要な接続パラメータの値は次のようになります。

dbf = xxx.db
dbn = xxx
server = xxx

データベース・ファイルの後に -n スイッチを指定することにより、データベースに名前を付けることができます。例えば、前の例を使用して、代わりに次のコマンドを考慮します。

dbeng16 xxx.db -n Data

ここでは、データベースに Data という名前が指定されています。サーバの名前は指定されていないので、サーバはデータベースの名前を受け入れて、Data という名前になります。この場合は、接続パラメータが次のように表示されます:

dbf=xxx.db
dbn=Data
eng=Data

最後に、-n スイッチを使用してサーバ名とデータベース名の両方を指定する場合を考えてみます。コマンドのデータベース・ファイル名の前に -n スイッチを置くと、サーバの名前が指定されます。データベース・ファイル名の後に -n スイッチを置くと、データベースの名前が指定されます。

dbeng16 -n MyServer xxx.db -n MyDatabase

この例では、MyServer という名前がサーバに付けられ、データベースにも明示的に MyDatabase という名前が付けられます。接続パラメータは次のようになります:

dbf = xxx.db
dbn = MyDatabase
server = MyServer

関連コンテンツ
関連ドキュメント
-nデータベースサーバ・オプション
-nデータベース・オプション
AutoStart(ASTART)接続パラメータ

このページは、以下の英語ページの抄訳です。

Assigned Tags

      Be the first to leave a comment
      You must be Logged on to comment or reply to a post.