Centos6.5安装SSDB数据库

SSDB是一个C/C++语言开发的高性能开源NoSQL数据库服务器,支持Key-value, Keyhashmap, Key-zset(sorted set) 等数据结构,十分适合存储数亿条级别的列表, 排序表等集合数据, 是Redis的替代和增强方案。

SSDB的性能很突出,与Redis基本相当了,Redis是内存型,容量问题是弱项,并且内存成本太高,SSDB针对这个弱点,使用硬盘存储,使用Google高性能的存储引擎LevelDB,适合大数据量处理并把性能优化到Redis级别,具有Redis的数据结构、兼容Redis客户端,还给出了从Redis迁移到SSDB的方案。

 

特性
  • 替代 Redis 数据库, Redis 的 100 倍容量
  • LevelDB 网络支持, 使用 C/C++ 开发
  • Redis API 兼容, 支持 Redis 客户端
  • 适合存储集合数据, 如 list, hash, zset...
  • 客户端 API 支持的语言包括: C++, PHP, Python, Java, Go
  • 持久化的队列服务
  • 主从复制, 负载均衡,(双master)和多主架构, 负载均衡

安装ssdb

1 wget --no-check-certificate https://github.com/ideawu/ssdb/archive/master.zip
2 unzip master
3 cd ssdb-master
4 make

报以下错误

ERROR! autoconf required! install autoconf first

Makefile:4: build_config.mk: No such file or directory
make: *** No rule to make target `build_config.mk‘.  Stop.

安装 autoconf

yum update
yum install -y  autoconf

安装autoconf成功后,继续make

1 make

报以下错误

make[1]: Entering directory `/root/ssdb-master/deps/leveldb-1.18‘
g++ -I. -I./include -fno-builtin-memcmp -pthread -DOS_LINUX -DLEVELDB_PLATFORM_POSIX -DSNAPPY -I../snappy-1.1.0 -O2 -DNDEBUG -c db/builder.cc -o db/builder.o
make[1]: g++: Command not found
make[1]: *** [db/builder.o] Error 127
make[1]: Leaving directory `/root/ssdb-master/deps/leveldb-1.18‘
make: *** [all] Error 2

安装g++

yum -y install gcc+ gcc-c++

安装g++成功后,继续make

1 make

报以下错误

g++: error: /root/ssdb-master/deps/snappy-1.1.0/.libs/libsnappy.a: No such file or directory
make[1]: *** [all] Error 1
make[1]: Leaving directory `/root/ssdb-master/src‘
make: *** [all] Error 2

这是因为 snappy 没有编译成功, 这一般是因为你的系统时钟有问题. 可以这样解决

1 cd deps/snappy-1.1.0;
2 ./configure
3 make

安装Snappy成功后,返回到ssdb-master目录

1 cd ../..
2 make
3 make install

到此为止,ssdb就安装成功了。

-----------------------------------------------------后续-----------------------------------------------------------------------------

安装成功以后,如何启动呢?

ssdb安装目录下
# 启动方式一(会阻塞控制台,不推荐!)
./ssdb-server ssdb.conf

# 启动方式二(加-d参数,就可以不阻塞控制台,后台启动了)
./ssdb-server -d ssdb.conf

启动成功以后,如何连接呢?

ssdb目录下
# 连接方式一(直接连本地)
./ssdb-cli

# 连接方式二(-h -p参数,可以连接远程ssdb)
./ssdb-cli -h 127.0.0.1 -p 8888

OK。貌似万事大吉了,但是!你再用别的机器去连接ssdb服务器的时候,可能会发现连接不上。

这时候,你需要检查两个地方:

1. ssdb服务器的防火墙有没有关闭啊?没有的话,下面两个命令走一下~

    # service iptables stop 暂时关闭防火墙

    #chkconfig iptables off  永久关闭防火墙

2.ssdb安装目录下,编辑 ssdb.conf 文件,把红框位置的 127.0.0.1 改成 0.0.0.0 (向所有ip开放连接)。 ps:如果不想向所用ip开放连接,可以仔细研究红框下方的注释部分,里面包括 允许ip、禁止ip、设置权限等等。


------------------------------------------------------------结束------------------------------------------------------

开始尽情享受你的ssdb吧!

------------------------------------------------------------追记------------------------------------------------------

今天研究了一下SSDB设置登录密码的方法。总结如下:

1. 修改ssdb.conf文件,增加auth项。auth要设置至少32位字符(SSDB要求的)。否则即使ssdb启动起来,也连不上。


2.说一下ssdb有密码情况下的连接方式

第一种: 先连接,再验证权限 ----  auth指令

[root@bogon ssdb]# ./ssdb-cli
ssdb (cli) - ssdb command line tool.
Copyright (c) 2012-2016 ssdb.io

'h' or 'help' for help, 'q' to quit.

authentication required.
ssdb 127.0.0.1:8888> auth 123456789012345678901234567890123
ok
(0.000 sec)
ssdb 127.0.0.1:8888> 

第二种:直接在连接时校验权限----   -a连接参数

[root@bogon ssdb]# ./ssdb-cli -a 123456789012345678901234567890123
ssdb (cli) - ssdb command line tool.
Copyright (c) 2012-2016 ssdb.io

'h' or 'help' for help, 'q' to quit.

ssdb-server 1.9.6

ssdb 127.0.0.1:8888> 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值