Centos6.5安装SSDB数据库

xiaoxiao2021-02-28  45

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>
转载请注明原文地址: https://www.6miu.com/read-2625417.html

最新回复(0)