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)接続パラメータ