Mysql的新管理软件

自从MyDB studio开始收费后,我一直在使用ems的mysql管理软件的lite免费版本,由于mysql本身的简易性,对管理软件要求比firebird要低不少所以一直用着,但最近使用2007版本的时候麻烦来了,那就是mysql最为麻烦的一个方面–字符集。

通过ems新建数据库后,即便已经设置好gbk字符集,但在他的管理界面下输入中文,无论是ems中还是mysql客户端下都显示为两个?。需要在连接数据库注册的时候进行一番设定才能正确显示汉字。

恰好在网上发现了一款免费的SQLyog管理软件,他有两个版本,企业版和社区版,社区版是免费的,虽然没有ems那么易用,但在字符集方面设置很简单,而且sql使用起来感觉和FlameRobin比较相似,但没有FlameRobin那么人性化,比较起来还是不错的。

FireBird的几个管理软件

通过近期对firebird的使用,真是越来越喜欢它了。虽然几次在linux安装不成功,但在windows单机下,firebird作为一个高速低耗的数据库还是很称职的。

firebird的字符管理功能较差,就我来言还不如mysql,所以一般管理都是通过管理软件来管理,网上最受欢迎的是IBexpert,使用起来的确简单明了功能强大,但毕竟是破解版,和开源firebird搭配有些不爽。

免费的管理软件可以使用ems的SQL Manager Lite for InterBase & Firebird,lite版本的有安装版和单文件版本,使用起来虽然没有ibexpert简易,但的确也够用了,但是最新的2008版本有个问题,那就是对中文支持不好,如果连接的数据库中包含中文字符,超过一定长度则会出现i/o错误,估计很多网上流传的firebird对中文路径支持不好和使用管理软件有关。但如果换成2005版本,则对firebird2.1版本支持不好。

ems SQL Manager Lite 版本还有一个缺陷就是没有数据库的备份、恢复功能。虽然菜单里面有,但使用起来没有反应,估计是免费版本的缘故。

后来在网上看到有介绍FlameRobin管理软件,下载使用,发现界面非常简单,甚至可以称得上简陋了,没有上面两个的建库、数据修改的直观的所见即所得的界面,都需要使用sql语句来实现,但这却是他的特色或者最大的优点,因为他的sql管理器是非常方便和人性化,可以在里面测试sql语句,快速修改数据库,不需要再使用ssh文字界面来管理,效率非常高。

如果结合起来使用,那么建库、直接修改表中数据可以使用ems的lite版本,直观简单,日常维护、查询则可以使用FlameRobin效率高。

firebird2.1中decimal字段的四舍五入

上周用firebird2.1做了一个劳资数据库,用来存储单位劳资信息并计算个人所得税。

深知税务人员秉公执法,锱铢不舍,所以不敢马虎,计算完毕后与税务机关的excel模板生产的数据进行了逐一的比较,发现存在2%的人员中存在一分钱的误差,估计是四舍五入的问题,用速算法算了算,发现问题出在小数点后第三位,比如如果是10.155,excel计算的结果是10.16,而把这个数值作为浮点数导入decimal字段时候,他是直接截取小数点后两位的,而10.156则取的是10.16,也就是说五舍六入了。

于是修改程序,那就是在程序中使用floattostr函数将浮点数转化为字符后插入,可以解决这个问题,但又出来另一个问题,那就是如果10.1445在excel里面是取10.14的,但在程序导入到数据库中则是10.15。后来再次修改,使用formatfloat函数规范数值,将所得税值取小数点后两位导入,这样就可以解决了。

再次升级

上周六为乐乐的两个哥哥各装了一台机器,学习用的,所以cpu用的是最为低端的闪龙,但考虑到今后的升级,主板选用的是微星的780V。机器安装的很顺利,速度也很快,算是比较满意,最后拷机的时候,突然想到用自己最近在玩的使命召唤2试一下。

我原先在我的机器上玩使命召唤2的时候,对690g有些失望,虽然特效可以部分打开,但效果并不好,只能算是将就着玩就算是给乐乐当战争教育用了。但当我在780v的机器上安装完毕进入第一个场景时,我有些震撼了。

这种震撼久违了。记得那还是我玩惯了s3的trio64+后在科技市场见到一款用trident9750玩的射击游戏的时候的感觉。尽管后来抨击9750的文章很多,那是因为有珠玉在侧,但当时看到那种亮丽和流畅足以促使我升级显卡。

同样的震撼发生在时隔仅一年的产品之间,难怪有些评测说780G比690G提高了2-3倍,我原先只认为是夸大其词,但那天看到的效果让我相信了,游戏默认的效果很流畅,而这些配置是我在690g上曾经设置过但只能看幻灯的。

所以我要升级,倒不是现在的不能满足我的日常要求,但那点震撼促使我一定要升级。

今天买了翔升的690G主板,看重的是他有3个pci插槽,这样我就可以继续使用电视卡而放弃那个鸡肋般的集成声卡,而使用我的坦克声卡火线版,同时更换了dvd刻录机,在sony和先锋之间犹豫了半天,后来考虑到单位的sony不错,而且价格要便宜(还赠带卡片的数据线),便买了sony的。

安装一切顺利,除了为了pci的占用调整了一下声卡和电视卡的位置外,连系统都没有重新安装就正常应用了。

打开音乐,哈哈,集成声卡还是烂啊,而且这个声卡支持音响和耳机分别使用插孔,这样用耳机听效果更好。

升级完毕,感到一种满足,也许这种满足也就足够了。

DEDE和帝国的比较选择

新的机器装好之后,想建立一个算是家庭的网站,这样可以便于管理日常的文件、软件、图片、flash等,看到帝国的界面不错,再说也已经懒得再自己修改源码,于是便安装了帝国CMS。

帝国的界面和细节无疑是要好于DEDE的,但用了2天后我还是决定恢复使用DEDE了,主要原因一是习惯还有就是DEDE的设置要简单直观,有些所做即所得的味道,而帝国要复杂的多,修改一个主页的模板也要绕几个圈子,后台管理看似强大,但想实现自己的目的要修改几个相关的配置选项。

可以这么说,帝国适合于给别人或者是最终用户推荐使用,界面美观,功能强大,细节也做的很好,但管理起来两个CMS,那滋味真是谁管谁知道。

DEDE4.0之后批评的人很多,但用了5.0之后,也曾经想回去使用更为自由的3.1,但已经不能再适应了,毕竟DEDE是进步了,下一步就是一些面子问题了。

重新选择动态域名解析并配置lighttpd

机器配置好了,但域名解析是个问题,希网的域名解析和当年相比,要差了不少,需要更新多次才能解析成功,而开机后有时候几个小时之后才能使用域名登陆服务器,于是想换一个,先想到的是最近正火的花生壳,有freebsd版本的客户端,但只是6.X版本的,在7.0版本上死活装不上,于是想到了科迈,虽然域名只有两个可以选择,但是客户端有freebsd版本的,而且只有一个文件,而且很小,所以就下载试一下。不比不知道,一比较,希网的真要大的改进了,科迈的域名解析是一次成功,设置也简单,把命令行加到rc.local文件中,随机启动,马上就可以通过域名解析了。

解决了域名解析,还要解决一下端口问题,突然想到,为什么不再安装一个lighttpd,这样用他来监听80端口,如果分配的地址恰好没有被封锁,不就可以在单位维护了吗?

通过ports安装好lighttpd,但配置起来却遇到了麻烦,总是不能启动,只好一个个解决。

首先是按照lighttpd.conf文件中的要求在/var/log目录下创建一下log文件,并授权www用户有权写入。

再就是默认的lighttpd.conf文件中关于fastcgi设置有误,需要修改socket和bin-path

fastcgi.server             = ( “.php” =>
( “localhost” =>
(
#                                   “socket” => “/var/run/lighttpd/php-fastcgi.socket”,
#                                   “bin-path” => “/usr/local/bin/php-cgi-cgi”
“socket” => “/tmp/php-fastcgi.socket”,
“bin-path” => “/usr/local/bin/php-cgi”

                                 )
)
)

修改完毕,在命令行下通过/usr/local/etc/rc.d/lighttpd onestart就可以启动lighttpd了。

lighttpd的端口设置很有意思,默认是80,但你修改server.port                = 800后发现他依然还可以监听80端口,原先在文件的最后有$SERVER[“socket”] == “0.0.0.0:80” { }这一行,所以依然可以监听80端口,但问题是我从外网还是只能通过80端口访问,暂且如此,以后再研究解决。

谈谈大水牛机箱

大水牛的小型机箱在网上是伴随着威盛的芯板而广为人知的,最初我到济南科技市场问询,当时知道的很少,更不用说是有现货了。但在全国一般有芯板的报道就有大水牛小型机箱的影子,也算是上镜率极高。

近期随着atom的上市,济南的大水牛机箱也慢慢多起来,我去拿货的时候,看到这个机箱不象一般机箱那样是单独的包装,而是很多机箱装在一个大的包装箱内,因为据老板说,一般很少有单独要机箱的,一般都是搭配着威盛或者atom的主板一起买,所以包装能省则省。

说实话,这款机箱应该是用了心的,通过调整硬盘支架的宽度可以安装不同尺寸的硬盘,应付itx类的小主板空间也很富裕,质量也不错,据老板说最高曾经用过闪龙,但还是有几个缺陷或者需要改进的地方。

1、电源噪音有些大。既然功率小,可以设计的更静音一些。

2、电源接口缺少软驱接口。现在软驱是很少见了,但用cf卡做电子盘的时候还是要用到那个电源接口的。

3、机箱还可以更小一些。为了满足某些用户的需要,机箱上预留了笔记本光驱位。但那个只能算是个摆设,因为那个光驱位对应的正是大部分主板的电源接口位置,在一般的电源接口形状,是无法安装光驱的,所以还不如取消光驱位,这样机箱还可以更小或者更薄一些。

4、这个机箱对PCI而言是没有扩展性可言的,所以如果要做网关使用,还是购买双网卡的主板为好,即便是带两个pci插槽的芯板2500+也是没有用武之地的。

“箱子”重于搞定

从年初开始我就期盼着龙芯盒子的市场化,但很失望,先是一推再推,后来就是双网卡变单网卡,看来是指望不上了,于是转向威盛的芯板,但不太满意的就是依然是单网卡,而如果自己加网卡,有两个问题,一是占用一个宝贵的pci插槽,再者机箱不好找。

奥运前在淘宝网见到了一款磐仪的工控主板,用的是威盛的c7-d,1.5g,让我动心的主要还是他的双网卡,再就是看到做工的确不粗,大散热片,时髦的固态供电,于是下单买了一块,360元。又到科技市场购买了一款市面上比较火的大水牛小型机箱,机箱不大,简直就是专门为威盛芯板准备的,考虑到为了省电和携带方便,于是又咬牙买了一块盒装的西数120G笔记本硬盘,加上一条便宜的1G667内存,夹着机箱就回家了。

机箱安装很简单,硬盘可以通过调整机箱里面的硬盘支架来安装笔记本硬盘或者台式机硬盘,接上电源,好家伙,噪音不小,想想也是,工控主板是不在乎噪音的,但放在家里的确有些吵。

装好机器后挂上自己的hp刻录机安装系统,但是很不顺,无论安装freebsd7.0还是ubuntu8.0server总是进了安装界面无法继续,但安装早期刻录的freebsd6.1倒是一切正常。

这样过了几天,借了一个时期近一些的光驱安装,这下倒是一切正常了,估计是自己刻录的光盘兼容性的问题,可惜了我的hp刻录机啊。

安装freebsd7.0,安装、编译起来速度感觉还是赶不上原先的athon1700+。freebsd7.0安装起来和原先版本相比要简单很多,许多提示已经取消,所以不得不在安装完毕之后再手动设置。设置好网络之后,没有使用光驱安装ports等,直接用网络安装,速度也不慢,看来网通3M网络的确不错。

由于是使用的adsl,按照网上帖子,设置好ppp拨号配置,使用pf作为防火墙路由,重启机器,却发现网内windows机器可以解析域名,但却出不去,查了半天才知道原来需要在rc.conf文件中添加gateway_enable=”YES”,这个原先是在设置的时候系统自己添加的,但这次还是要自己做。调整好后可以上网了,速度很好,没有什么迟延。

然后开始安装apache等,这个一切倒也顺利,在试过几个动态域名网站之后,最后还是用的是3322的。安装客户端的时候,按照网上的经验,先用ports安装好ez-ipupdate,然后再用3322的覆盖掉新装的文件,固然省去不少麻烦。

安装完毕之后给了我一个惊喜,在不修改apache端口的情况下居然可以直接访问了?难道网通的大爷们开恩了?但重启机器后又不行了,需要修改端口,看来这个是不同的ip地址段的管理不同,白高兴一场。

装完软件后,安装原先的预谋,拔掉了cpu风扇的电源,但机箱电源噪音还是不小的,机器运转半小时后,系统开始报警,然后自动关机,试试温度,非常高,显然,功耗控制是一码事,散热是另一码事,在缺少整体散热设施的情况下,威盛的芯板还是离不开主动散热的,看来宣传毕竟是宣传。

3322的解析最近感觉没有几年前好了,昨晚设置好机器回来访问的时候,解析不正常,今天早晨发现好了,估计是解析服务的问题。建立mysql数据库,是有load data导入了13万条记录,速度很快,进行了分表优化进行跨表查询,这时候就看出cpu的性能不太足了,cpu长时间占用100%,优化查询正常。

现在我自己的服务器建好了,虽然没有龙芯盒子那么便携,但这个箱子还是不错的,找个提包装起来应该也不麻烦。

错怪了pgExpress

前段时间在TurboDelphi下安装了pgExpress连接Postgresql数据库,使用起来感觉比较方便,也很稳定,唯一不满意的就是使用过程中,发现配置数据库连接属性的时候,只需要输入用户名就可以,这样连接岂不是很不安全?或者因为开源就偷工减料了?

周末准备开始用自己的新DIY的机器运行Postgresql,所以今天又找来相关资料粗略看看,便将pgExpress压缩包解压开来看看里面的文档,这才发现是错怪了pgExpress。

上次安装的时候是按照默认配置复制到原先的配置文件中的,那里面的设置是最为简化的,仅为:

[PGEConnection]
Database=localhost/mydb
DriverName=PostgreSQL
User_Name=john

所以自然只有用户名没有密码设置了,实际上在doc文档中建议用:

[PGEConnection]
BlobSize=32
HostName=host
Database=database_name
DriverName=PostgreSQL
Password=temp123
User_Name=steve
这样一来就解决了安全问题,真是错怪了好人,以后学习还是更为深入一些为好。

MSS使用手记五:初步使用postgresql

安装完毕PostgreSQL后,决定使用Mysql的数据库数据来试验一下。

首先新建了一个/var/db/pg目录,赋予postgres其权限,然后进入Postgressql命令所在目录首先初始化数据库

./initdb -D /var/db/pg

初始化之后再执行./postmaster -D /var/db/pg 启动这个新建的服务器,并新建了一个数据库。

由于还不习惯使用命令行建表,所以下载了EMS的postgresql的管理软件,但在winxp的机器上总是连接不上,于是进入/var/db/pg目录,先是修改postgresql.conf中将tcpip_socket 设为 true。然后修改pg_hba.conf,添加host    all         all         192.168.1.0/24              trust虽然不是很安全,但至少本网段内的机器可以远程连接管理了。

重新启动数据库后,ems连接上了数据库,并依照mysql的表结构新建了一个表。原先Mysql数据库里面有接近4万条记录,属于大而全的数据汇集,使用Postgresql查询,好家伙,和mysql相比速度不是一般的慢。

于是进行表的优化,新建了几个表,把冗余的数据通过insert into…..select distinct的方式导入到新的表中建立关联,并删除了原先的字段,这样查询起来速度快了不少,但还是要比mysql慢。

慢不怕,下一步逐渐测试一下postgresql的功能吧。