无法连接到火鸟
Unable to connect to firebird
我几乎一行一行地遵循这个docs:
sudo add-apt-repository ppa:mapopa
sudo apt-get update
apt-cache search firebird2.5-*
sudo apt-get install firebird2.5-superclassic
sudo dpkg-reconfigure firebird2.5-superclassic
在这个阶段,我看到一个提示,要求我为 SYSDBA
设置密码,所以我将其设置为 root
。然后我做剩下的:
sudo apt-get install firebird2.5-examples firebird2.5-dev
cd /usr/share/doc/firebird2.5-examples/examples/empbuild/
sudo gunzip employee.fdb.gz
sudo chown firebird.firebird employee.fdb
sudo mv employee.fdb /var/lib/firebird/2.5/data/
最后:
$ isql-fb
SQL> connect "/var/lib/firebird/2.5/data/employee.fdb " user 'SYSDBA' password 'root';
因此,我收到了这些错误消息:
Statement failed, SQLSTATE = HY000
operating system directive open failed
-Permission denied
这有什么问题吗?
您的数据库文件可能仅限于超级用户,因为您一直在做 sudo gunzip ..., sudo chown ..., sudo ...
- 尝试
sudo isql-fb
以超级用户身份工作(不是最佳选择)
- 尝试
sudo chmod 777 employee.fdb
由任何人制作文件readable/writable(也不是最好的选择)
- 尝试
sudo useradd -G {user} firebird
将自己添加到 firebird
组并 sudo chmod g+w employee.fdb
确保 employee.fdb 具有组写入权限(推荐)
我遇到了同样的问题,所以我决定post这个解决方案:
你必须做一些事情……首先,让我们看看安全方面的东西……
在文件中/etc/firebird/2.5/firebird.conf
section: DatabaseAccess
一定是这样的:
数据库访问限制/the/directory/you/want/to/put/the/database
现在,在文件 /etc/firebird/2.5/aliases.conf
中输入别名和目录...
diryouwant = /the/directory/you/want/to/put/the/database/database.fdb
像这样保存并重启 firebird 服务:
sudo service firebird-2.5"theversionyouhave" restart
您必须像这样更改目录所有者:
sudo chown firebird.firebird /the/directory/you/want/to/put/the/database
现在您可以毫无问题地使用 flamerobin...
我几乎一行一行地遵循这个docs:
sudo add-apt-repository ppa:mapopa
sudo apt-get update
apt-cache search firebird2.5-*
sudo apt-get install firebird2.5-superclassic
sudo dpkg-reconfigure firebird2.5-superclassic
在这个阶段,我看到一个提示,要求我为 SYSDBA
设置密码,所以我将其设置为 root
。然后我做剩下的:
sudo apt-get install firebird2.5-examples firebird2.5-dev
cd /usr/share/doc/firebird2.5-examples/examples/empbuild/
sudo gunzip employee.fdb.gz
sudo chown firebird.firebird employee.fdb
sudo mv employee.fdb /var/lib/firebird/2.5/data/
最后:
$ isql-fb
SQL> connect "/var/lib/firebird/2.5/data/employee.fdb " user 'SYSDBA' password 'root';
因此,我收到了这些错误消息:
Statement failed, SQLSTATE = HY000
operating system directive open failed
-Permission denied
这有什么问题吗?
您的数据库文件可能仅限于超级用户,因为您一直在做 sudo gunzip ..., sudo chown ..., sudo ...
- 尝试
sudo isql-fb
以超级用户身份工作(不是最佳选择) - 尝试
sudo chmod 777 employee.fdb
由任何人制作文件readable/writable(也不是最好的选择) - 尝试
sudo useradd -G {user} firebird
将自己添加到firebird
组并sudo chmod g+w employee.fdb
确保 employee.fdb 具有组写入权限(推荐)
我遇到了同样的问题,所以我决定post这个解决方案:
你必须做一些事情……首先,让我们看看安全方面的东西……
在文件中/etc/firebird/2.5/firebird.conf
section: DatabaseAccess
一定是这样的:
数据库访问限制/the/directory/you/want/to/put/the/database
现在,在文件 /etc/firebird/2.5/aliases.conf
中输入别名和目录...
diryouwant = /the/directory/you/want/to/put/the/database/database.fdb
像这样保存并重启 firebird 服务:
sudo service firebird-2.5"theversionyouhave" restart
您必须像这样更改目录所有者:
sudo chown firebird.firebird /the/directory/you/want/to/put/the/database
现在您可以毫无问题地使用 flamerobin...