z*******3 发帖数: 13709 | 1 存个档
我用的是macbook,网络上的资料太少了
firebird比起mysql来说资料还是少很多
鉴于对oracle的mysql前景的忧心,还是坚决地转向了firebird
但是装逼是有代价的,代价就是网络上资料几乎为0
之前搞成功过一次,但是几乎是狗屎运好撞到的
也不知道为什么,太久不用就忘了是哪个版本了
前几天正好要用到,捣腾两三天,总算弄明白了
开个贴,存个档,以防将来忘记
先说各个系统的版本
macosx: 10.5
jdk: 1.4-1.6都有,但是选择了1.5的版本
然后就是头大的firebird的版本的问题了
firebird小是小,但是问题不少
第一个就是2.5以上的版本不支持在macosx10.6以下版本的运行
所以对我来说只有选择2.1
第二个问题就是,fb有两个版本,一个classic server,另外一个是superserver
前者理论上是可以直接连接,但是要手动启动服务监听3050端口
而且好像在启动的时候就需要给出connection,这个太扯淡了
jdbc可没有办法在dbserver启动之前建立连接,所以坚决干掉
必需选择superserver(ss)的版本才可以让fb运行一个fbserver的线程监听3050端口
这样jdbc才能在fbserver跑起来之后连接到
第三个问题就是,cpu的问题
发现32位的程序居然跑不了,intel core 2 duo是64位的
所以必需下64位版本的程序才能把fbserver给跑起来
不同系统软件的兼容性的问题在这个例子表现得淋漓尽致
简单说就是,必需下firebird2.1的 64位的 superserver版本,才能很好滴让jdbc连接上去
而且jdbc也就是firebird的jaybird的jdk版本必需对应1.5才行
下下来的jaybird本身的版本号是1.6,很容易跟对应的jdk的版本号弄混
omg
最后,firebird在macosx上没有uninstall的功能
所以转载一个自动清除firebird的脚本
运行该脚本前记得打开activity monitor关掉fbserver和fbguard两个线程
理论上安装firebird成功之后这两个线程只要开机它们就会自动启动
#!/bin/sh
echo "Clean Services"
echo "Clean User"
dscl localhost -delete /Local/Default/Users/firebird
echo "Clean Group"
dscl localhost -delete /Local/Default/Groups/firebird
if [ -f "/Library/StartupItems/Firebird" ]; then
echo "Remove SuperServer StartupItem"
rm -fr /Library/StartupItems/Firebird
fi
if [ -f "/Library/LaunchDaemons/org.firebird.gds.plist" ]; then
echo "Remove Launchd"
launchctl unload /Library/LaunchDaemons/org.firebird.gds.plist
rm /Library/LaunchDaemons/org.firebird.gds.plist
fi
echo "Remove Framework"
rm -fr /Library/Frameworks/Firebird.framework
echo "Remove Receipt"
rm -fr /Library/Receipts/Firebird*.pkg
#Add the following for Firebird V2.5
echo "Remove /tmp/firebird"
rm -fr /tmp/firebird
但是这个有问题,因为在macosx的hd的Framework下
要清楚Firebird.framework需要密码,所以用脚本不太好弄自动删除
需要手动删除,删除前会问密码,输入密码删除后就ok了
贼78烦 |
g*****g 发帖数: 34805 | 2 PostgreSQL doesn't work for your purpose?
【在 z*******3 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 存个档 : 我用的是macbook,网络上的资料太少了 : firebird比起mysql来说资料还是少很多 : 鉴于对oracle的mysql前景的忧心,还是坚决地转向了firebird : 但是装逼是有代价的,代价就是网络上资料几乎为0 : 之前搞成功过一次,但是几乎是狗屎运好撞到的 : 也不知道为什么,太久不用就忘了是哪个版本了 : 前几天正好要用到,捣腾两三天,总算弄明白了 : 开个贴,存个档,以防将来忘记 : 先说各个系统的版本
|
z*******3 发帖数: 13709 | 3 随便找了一个开源的db,听说fb比较小,就选fb了
这两个我之前都没怎么用过,也不能保证大象会不会给我造成类似的困扰
【在 g*****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : PostgreSQL doesn't work for your purpose?
|
z*******3 发帖数: 13709 | |
i**e 发帖数: 6810 | 5 嫌大就javadb,java自带,或者h2,可以内置可以单独运行
【在 z*******3 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 随便找了一个开源的db,听说fb比较小,就选fb了 : 这两个我之前都没怎么用过,也不能保证大象会不会给我造成类似的困扰
|
r*****s 发帖数: 985 | 6 i second postgres too.
it's picked up as the sub to mysql
by open source community.
【在 g*****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : PostgreSQL doesn't work for your purpose?
|
z****e 发帖数: 54598 | 7 那也得1.6才行,我不希望把我的jdk版本弄得太高
因为我很有可能会使用applet,不能对客户机要求太高
fb才10m啦,很小了,可以了,我对本机上的数据库要求不高
只要是个数据库,能建立连接池就行,我会用hibernate封装的
在网络上搜索了一下,看到对mysql是恶评如潮
倒是很多人对其它两个数据库好评有加
当年mysql作为一家“开源”公司好像也是被人骂的,说是假开源
【在 i**e 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 嫌大就javadb,java自带,或者h2,可以内置可以单独运行
|
i**e 发帖数: 6810 | 8 在客户机上用吗?
derby DB可以单独装,不过还不如h2了
【在 z****e 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 那也得1.6才行,我不希望把我的jdk版本弄得太高 : 因为我很有可能会使用applet,不能对客户机要求太高 : fb才10m啦,很小了,可以了,我对本机上的数据库要求不高 : 只要是个数据库,能建立连接池就行,我会用hibernate封装的 : 在网络上搜索了一下,看到对mysql是恶评如潮 : 倒是很多人对其它两个数据库好评有加 : 当年mysql作为一家“开源”公司好像也是被人骂的,说是假开源
|