MongoDB是C++开发的一款开源、无模式的文档型数据库,具有高性能、易部署、易使用、数据存储方便等特点;MongoDB采用Bson(binary json)的形式存储数据,无锁,无事务,有索引,支持集群和分片功,可动态增删结点。
实验环境:
系统:FreeBSD 8.1-RELEASE
版本:mongodb v1.6.6
安装:
目前,官网上并没有FreeBSD下MongoDB的pkg包下载,所以FreeBSD下MongoDB的安装方式只有两种:ports方式和源码方式。其中Ports方式十分简单,但是由于网速等因数影响,可能要很久才能完成安装;而在MongoDB依赖包安装不全的的情况下,使用源码方式安装MongoDB相对会更为复杂。
1. Ports方式安装MongoDB:
- cd /usr/ports/databases/mongodb
- make
- make install
Ports方式安装MongoDB十分简单,就以上三条命令。但由于网络问题或Ports树太旧等原因可能会报错。如出现错误终止,请仔细观察错误代码,删除/usr/ports/distfiles/下未下载完成的文件或更新Ports树后重新Make。
如果你有多台FreeBSD主机要安装MongoDB,而且这些主机的硬件平台几乎相同,为了提高工作效率,你可以将Ports方式安装的MongoDB、以及MongoDB的依赖包,打包成pkg包,然后通过scp方式复制到其他主机上使用pkg_add命令安,效率会成倍的提高。具体打包方式如下:
- cd /var/db/pkg
- pkg_create -R -b mongodb-1.* # 把*号换成版本号,-R参数为连同依赖包一起打包
- ls *.tbz # 查看打好的包
按以上方式打好包后,即可以拷贝到其他主机上,使用pkg_add mongodb-1.*.tbz进行安装。
2. 源码的方式安装:
①. 下载MongoDB:
打开www.mongodb.org/downloads页面,在最后一列找到你要需要版本的源码(我这里是v1.6.6),然后执行下列命令:
- #安装依赖包
- cd /usr/ports/lang/spidermonkey && make && make install
- cd /usr/ports/devel/scons && make && make install #在弹出的窗口中选上"python"
- cd /usr/ports/devel/boost-all && make && make install
- cd /usr/ports/devel/libexecinfo && make && make install
- cd /usr/ports/devel/pcre && make && make install #官方的文档中没此项,会报错
- #下载,解压,编译
- cd /usr/local
- fetch http://downloads.mongodb.org/src/mongodb-src-r1.6.5.tar.gz
- tar -zxvf mongodb-src-r1.6.5.tar.gz
- mv mongodb-src-r1.6.5 mongodb-1.6.5
- cd mongodb-1.6.5
- scons . # 然后等待完成
- # 设置环境变量
- export PATH=$PATH:/usr/local/mongodb-1.6.5
启动MongoDB服务:
MongoDB的服务端运行模式有三种,分别是:单台模式、主从模式、分片模式。
1. 单台模式的Mongodb的启动:
- mkdir -p /data/db
- mongod --dbpath /data/db --logpath /data/db/db.log --fork
- # 查看状态
- mongo 127.0.0.1:27017
- show dbs #显示数据库
- help
2. 主从(Master、Slave)模式的Mongodb的启动:
Master主机( ip为10.0.0.1):
- mongod --master --dbpath /data/master --logpath /data/master/master.log --fork
- cat /data/master/master.log
Slave主机(ip为10.0.0.2):
- mongod --slave --dbpath /data/slave --logpath /data/slave/slave.log --source 10.0.0.1:27017 --fork
- cat /data/slave/slave.log
测试:
- # 查看状态
- mongo 10.0.0.1:27017
- show dbs #显示数据库
- help
3. 分片模式:
由于分片模式配置相对复杂,在另篇文章详细介绍。
相关网站:
1. MongoDB下载:www.mongodb.org/downloads
2. 各种平台的安装帮助: http://www.mongodb.org/display/DOCS/BUILDING
3. 他们在使用MongoDB: http://www.mongodb.org/display/DOCS/Production+Deployments
4. 开发驱动:http://www.mongodb.org/display/DOCS/Drivers
实验环境:
操作系统:FreeBSD 8.0-RELEASE
CPU构架:amd64
数据库版本:postgresql-8.4.5
1. 下载PostgreSQL安装包:
在Web浏览器中打开http://www.postgresql.org/ftp/source/,找到要下载的源码包URL地址,然后执行如下命令:
- # cd /tmp
- # fetch http://wwwmaster.postgresql.org/redir/391/f/source/v8.4.5/postgresql-8.4.5.tar.bz2
2. 编译安装PostgreSQL:
- # tar -jxvf postgresql-8.4.5.tar.bz2
- # cd postgresql-8.4.5
- # ./configure --prefix=/usr/local/PostgreSQL
- # make && make install
3. 初始化PostgreSQL数据库:
- # pw user add postgresql -s /bin/csh
- # passwd postgresql
- # mkdir -p /data
- # chown postgresql /data/
- # su postgresql
- # /usr/local/PostgreSQL/bin/initdb -D /database/
注: 在初始化PostgreSQL数据库时,为了以后的维护方便,建议将数据文件建立在目录下,如我这里的/data。数据库文件就在此目录下的base里,如/data/base/下。
4. 启动数据库:
- # nohup /usr/local/PostgreSQL/bin/postgres -D /database & //启动数据库并后台运行
- # /usr/local/PostgreSQL/bin/psql -l //列出所有数据库
- # /usr/local/PostgreSQL/bin/psql postgres //登录到postgres数据库
- # /usr/local/PostgreSQL/bin/createdb aiezu //建立database
5. 疑难解答:
①. 问: 在"make && make install"时报以下错误:
- You must use GNU make to build PostgreSQL.
- *** Error code 1
答:在make时会用到gmake,所以请先用ports安装gmake,具体操作请参考相关文章。
②. 问: 在执行fetch命令时报如下错误:
- fetch: ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/make-3.81.tar.bz2: No address record
- => Couldn't fetch it - please try to retrieve this
- => port manually into /usr/ports/distfiles/ and try again.
- *** Error code 1
答:请检查FreeBSD是否正常连接网络,是否设置了IP地址,默认路由,DNS服务器。
③. 问: 执行/usr/local/PostgreSQL/bin/psql命令时:
- psql: FATAL: database "postgresql" does not exist
答: 引起此错误的原因是psql后面没有加数据库名时,FreeBSD默认会以$USER为数据库名进行连接。所以请在psql后面加上存在的数据库名。
④. 问: 执行/usr/local/PostgreSQL/bin/psql命令时:
- psql: could not connect to server: Connection refused
- Is the server running locally and accepting
- connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
答: 请确认postgresql数据库服务是否成功启动。
本日志由 Admin 于 2010-12-21 09:56:52 发表到 数据库 中,目前已经被浏览 1816 次,评论 34 次;
作者添加了以下标签: FreeBSD,PostgreSQL;
今天在Linux下装了Oracle 10g数据库,装好后将Linux系统语言切换为中文后,发现Oracle的em(Enterprise Manager)、dbca(database configuration assistant)中文界面、按钮全为方块或乱码,十分让人头痛。通过Google,百度查找原因,经过多次尝试,终于解决看到了em、dbca界面看到了可爱的中文。
先介绍一下我的系统坏境:
| 操作系统 | Red Hat Enterprise Linux AS 5 |
| Oracle版本 | 10.1.0.3 (10g) |
| $LANG | zh_CN.UTF-8 |
| $ORACLE_HOME | /opt/oracle/product/10.1.0/Db_1/ |
em,dbca中文方块乱码问题具体解决方法:
一、安装简体中文字体包fonts-chinese-3.02-9.6.el5:
我们首先得安装rhel5.0系统DVD中自带的中文字体包fonts-chinese-3.02-9.6.el5.noarch.rpm,这是至关重要的。如果没有安装此字体包,简体中文字体文件/usr/share/fonts/zh_CN/TrueType/zysong.ttf和/usr/share/fonts/chinese/TrueType/zysong.ttf就不存在的,中文显示就更无从说起了。
二、 设置Linux系统语言坏境:
- export LANG=zh_CN.UTF-8
三、 拷贝替换font.properties文件,执行下面两条命令:
- # cd $ORACLE_HOME/jre/1.4.2/lib/
- # cp font.properties.zh_CN.Redhat8.0 font.properties
- //注:也可以用font.properties.zh_CN_UTF8.Redhat,font.properties.zh_CN.*替换font.properties。
执行完这两条命令后,尝试启动Java控制台,查看是否解决中文方块问题:
- # ../bin/ControlPanel
如果已经不再是方块,则跳过第四步,否则继续按第4步操作。
四、 修改第三步复制替换的font.properties文件,将文件中的最后一行:
- filename.-misc-zysong18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1=/usr/share/fonts/zh_CN/TrueType/zysong.ttf
改为
- filename.-misc-zysong18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1=/usr/share/fonts/chinese/TrueType/zysong.ttf
文件中的最后一行指向的即为中文字体文件,确认文件是否存在。
五、按三、四步的操作,重新拷贝建立$ORACLE_HOME/jdk/jre/lib/下的字体设置文件。执行完此步骤后,dbca、netca等基于Java的程序的中文乱码方块问题得到解决。
六、清除按钮gif图片cache并重启服务(针的Web界面的管理程序):
- searchctl stop
- emctl stop dbconsole
- isqlplusctl stop
- rm -rf $ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/isqlplus/isqlplus/cabo/images/cache/zhs/*.gif
- rm -rf $ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs/*.gif
- searchctl start
- emctl start dbconsole
- isqlplusctl start
打开下面URL进行测试:
- Ultra Search URL:
- http://yourip:5620/ultrasearch
- Ultra Search Administration Tool URL:
- http://yourip:5620/ultrasearch/admin
- iSQL*Plus URL:
- http://yourip:5560/isqlplus
- iSQL*Plus DBA URL:
- http://yourip:5560/isqlplus/dba
- Enteprise Manager 10g Database Control URL:
- http://yourip:5500/em
经过以上步骤的操作,彻底解决了Linux下Oracle数据库em、dbca、netca中文界面、按钮方块乱码问题。
<a href='http://www.tunedairchaussures.com'> TN NIKE PAS CHE
<a href="http://www.tnstocker.com" target="_blank">TN NIKE P
<a href='http://www.maniketn.com'> TN NIKE PAS CHER </a> <a
greats piosts
I dont know what to say. This blog is fantastic
This is a good article, with its own style and characteristi
so what in that we think we're so proud of you.you have a go
© Copy 2010 Aiezu.Com. All rights reserved. Powered by Aiezu.com.