日期:2014-05-16 浏览次数:20643 次
??? 本文准备介绍最常用的四种nosql技术的安装和使用方法,包括如何使用java进行数据访问和操作。
??? 本文的所有操作都在centos5.6版本上测试通过,请保证系统已经安装了gcc,以便make命令可以正常使用,centos上可以使用命令yum install gcc安装。
?
??? 1.?mongodb
???? mongodb的安装最简单了,官方地址:http://www.mongodb.org
?
cd /data wget http://fastdl.mongodb.org/linux/mongodb-linux-i686-1.8.1.tgz tar xf mongodb-linux-i686-1.8.1.tgz cd mongodb-linux-i686-1.8.1 mkdir data mkdir logs bin/mongod --dbpath ./data --logpath ./logs/mongod.log &
??? 这样mongdb服务就启动了,其中--dbpath参数指定了数据存放位置,--logpath参数指定了日志存放位置,注意这两个目录? 都需要手动创建,不然启动会报错的。
?
?
[root@localhost mongodb-linux-i686-1.8.1]# ps axu|grep mongod root 4486 0.7 0.7 76136 4712 pts/0 Sl 06:43 0:00 bin/mongod --dbpath ./data --logpath ./logs/mongod.log root 4494 0.0 0.1 4028 696 pts/0 R+ 06:43 0:00 grep mongod
?? 通过上面命令可以看到mongod服务确实已经在后台运行了,下面我们来用mongodb提供的客户端访问。
[root@localhost mongodb-linux-i686-1.8.1]# bin/mongo MongoDB shell version: 1.8.1 connecting to: test > db.foo.save( { a : 1 } ) > db.foo.find() { "_id" : ObjectId("4df499b407ad992f4c1abc9a"), "a" : 1 } >
??? bin/mongo 命令用来连接mongodb服务,默认连接localhost,端口27017,可以分别使用参数--host,--port指定,mongodb --help可以看到连接命令的帮助信息。连接成功后,更多的操作命令可以使用db.help()查看,官方文档写的也很详细,http://www.mongodb.org/display/DOCS/Tutorial。
?
?? mongodb支持很多种开发语言,官方网站上都有介绍,java的地址是:http://www.mongodb.org/display/DOCS/Java+Language+Center,介绍的很详细,我就不啰嗦了,就给一个例子吧,见附件nosql-demo.zip。
?
?
? 2.Tokyo Tyrant
?
?? Tokyo Tyrant以前是sourceforge.net上的开源项目,现在已经迁移到fallabs.com,官方地址是:http://fallabs.com/tokyotyrant/。
?? Tokyo Tyran is network interface of Tokyo Cabinet,所以需要先安装Tokyo Cabinet,官方地址是:http://fallabs.com/tokyocabinet/? 。
??? 而Tokyo Cabinet又依赖于zlib和bzip2,官方网址分别是 http://www.zlib.net/和http://www.bzip.org/,无奈zlib的地址必须翻 墙才能打开,为了广大老实的孩子们在墙这边就能下载,咱就上传下zlib的二进制包吧,见附件 zlib-1.2.5.tar.gz。
?? 下面介绍整个安装步骤:
?? (1)安装zlib
???? 翻 墙到?http://www.zlib.net/?下载zlib,或者直接从本文的附件下载,上传到/data目录中,然后使用下面命令安装。????
cd /data tar -xf zlib-1.2.5.tar.gz cd zlib-1.2.5 ./configure make make install
?
?? (2)安装bzip2
cd /data wget http://www.bzip.org/1.0.6/bzip2-1.0.6.tar.gz tar xf bzip2-1.0.6.tar.gz cd bzip2-1.0.6 make make install
?
?? (3)安装Tokyo Cabinet
cd /data wget http://fallabs.com/tokyocabinet/tokyocabinet-1.4.47.tar.gz tar xf tokyocabinet-1.4.47.tar.gz cd tokyocabinet-1.4.47 ./configure make make install
?
?? (4)安装Tokyo Tyrant?
cd /data wget http://fallabs.com/tokyotyrant/tokyotyrant-1.1.41.tar.gz tar xf tokyotyrant-1.1.41.tar.gz cd tokyotyrant-1.1.41 ./configure make make install
?
?? 到此为止,算是安装完了,现在使用下面命令启动服务:ttservctl start
?? 我这里很悲剧的出错了: cannot restore segment prot after reloc: Permission denied
?? google一下,发现需要修改下文件 /etc/sysconfig/selinux,将SELINUX=enforcing 改为 SELINUX=disable,想知道为啥的话可以google下.
? OK,再执行命令 ttservctl start ,终于正常启动了。
? 下面验证下服务是否正常。Tokyo Tyrant的安装包自带了一个检测工具,测试Tokyo Tyrant的性能。用下面命令来执行:
/data/tokyotyrant-1.1.41/make check
???? 之后可以看到有Writing Test / Reading Test / Removing Test / Random Concatenating Test / Miscellaneous Test / Wicked Writing Test / Typical Access Test / Threading Test 等多种测试方式被执行,并打印出测试结果。恭喜,tokyotyrant算是安装完成了。
?
??? 接下来,我们来看看怎样用java程序访问Tokyo Tyrant。一般可以采用tokyotyrant-java来访问,地址是http://code.google.com/p/tokyotyrant-java/。附件的demo程序中有两个例子MRDBExample.java和MRDBExample.java,展示了如何使用tokyotyrant-java,其实也是相当的简单。需要注意的是这两个例子需要依赖netty和slf的jar包。
?
? 3. memcached