IBXを使って、FireBirdのローカル接続環境でアプリを制作したんですが、リモート接続の仕方が分からなくて困っています。
とりあえず、自身のPCにLAN経由で参照しようとしたのですが、ヘルプにあった(サーバー名:ファイル名)を参考に(192.168.XX.XX:XXXX.GDB)とするとI/Oエラー指定したファイルが見つかりません。となり、
(192.168.XX.XX:c:\DB\XXXX.GDB)だとテスト接続ができました。
後述の記述が基本的な使い方なんでしょうか?
データベースサーバーがどういう動きをするのかイマイチ理解できていなくて、ファイル名のフルパス名指しが腑に落ちません。常駐起動しているガーディアンとかは、フルパスのDBファイルにアクセスがあった場合、どういう関与の仕方をするんでしょうか?
質問が二つになってしまいましたが宜しくお願いします。
こんにちは。
> 後述の記述が基本的な使い方なんでしょうか?
そうですね。
"サーバ名:サーバから見たフルパスファイル名"
で指定します。イチイチフルパスファイル名を入力するのが面倒なのであれば、
Firebird のインストール先にある aliases.conf にエイリアスを設定すれば、
そのエイリアス名だけでアクセスできます。
TESTDB = C:\TEST\DATA.FDB
このような記述をしておけば、クライアントからは "TESTDB" だけでアクセス可能です。
同様に Interbase でもエイリアスが使えますが、やり方が違います。
詳しくは以下の URL を参照して下さい。
[InterBaseのデータベースエリアス機能]
http://edn.embarcadero.com/article/36460
> 常駐起動しているガーディアンとかは、フルパスのDBファイルにアクセスがあった場合、どういう関与の仕方をするんでしょうか?
他の DB サーバのように "サーバに DB を登録" しないので、
サーバから見たフルパス名を与えないと、
サーバからは DB がどこにあるのか判断できないと思います。
(他の DB に近い操作はエイリアスの設定ですよね?)
ありがとうございました。
よくわかりました。
エリアスも使ってみたいと思います。
ツイート | ![]() |