博客文章除注明转载外,均为原创。转载请注明出处。
本文链接地址:http://blog.chinaunix.net/uid-31396856-id-5757616.html
1.环境准备
1) 查看是否已分配swap空间
free -m
#如果没有则添加swap空间
如:增加 1 G
dd if=/dev/zero of=/opt/swap bs=1024 count=1048576
/sbin/mkswap /opt/swap
/sbin/swapon /opt/swap
#添加自启动检查
编辑/etc/fstab
/opt/swap swap swap defaults 0 0
#挂载
mount /opt/swap
2)添加lvm
fdisk –l
#创建pv
pvcreate /dev/vdb
vgcreate VG_DB_files /dev/vdb
#创建lv
lvcreate -L 99G -n LV_DB_files VG_DB_files
#格式化lv
mkfs.ext4 /dev/VG_DB_files/LV_DB_files
mkdir -p /dbfiles
vi /etc/fstab
/dev/VG_DB_files/LV_DB_files /dbfiles ext4 defaults 0 0
#挂载
mount -a
3)修改open files
#查看现有配置参数,max_open_files默认为1024
Ulimit –a
#修改max_open_files为65536
ulimit -n 65536
#添加俩条记录
vi /etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536
2.安装设置
#安装依赖包
yum install -y gcc gcc-c++ gcc-g77
#下载ssdb安装包并解压
wget --no-check-certificate
unzip master
cd ssdb-master
make
# 将安装在 /usr/local/ssdb 目录下
make install
启动命令:
# 启动主库
./ssdb-server ssdb.conf
# 或者启动为后台进程
./ssdb-server -d ssdb.conf
# 启动 ssdb 命令行
./ssdb-cli -p 8888
# 停止 ssdb-server
./ssdb-server ssdb.conf -s stop
3.设置为自启动
#自启动设置
cd /usr/local/ssdb
cp ssdb-ins.sh /etc/init.d/ssdb
#修改config参数
vi /etc/init.d/ssdb
# chkconfig: 2345 10 90
# chkconfig: 2345 64 36
# description: SSDB startup scripts
# each config file for one instance
config=/usr/local/ssdb/ssdb.conf
##添加系统自启动
chkconfig --add ssdb
chkconfig ssdb on
service ssdb start|stop|restart
echo "export PATH=$PATH:/usr/local/ssdb">>/etc/profile
修改/etc/init.d/ssdb
# chkconfig: 2345 10 90
# chkconfig: 2345 64 36
# description: SSDB startup scripts
# each config file for one instance
config=/etc/ssdb/ssdb.conf
ssdb_root=/usr/local/ssdb
#config=$2
pidfile=`cat $config | sed -n 's/pidfile[[:blank:]]*=[[:blank:]]//p' | sed 's/^\s*//g'`
4.CONF文件配置
mkdir –p /dbfiles/ssdb_home/ ssdb_data
mkdir –p /dbfiles/ssdb_home/logs
mkdir –p /etc/ssdb
编辑 /etc/ssdb/ssdb.conf
# ssdb-server config
# MUST indent by TAB!
# relative to path of this file, directory must exists
work_dir =/dbfiles/ssdb_home/ ssdb_data # data目录
pidfile = /dbfiles/ssdb_home/ ssdb_data /ssdb.pid #PID文件路径
server:
ip: 172.18.0.64 ##本机ip,ssdb-cli命令端连接。必须显式指定ip
port: 8888
# bind to public ip
#ip: 0.0.0.0 ##不限制ip
# format: allow|deny: all|ip_prefix
# multiple allows or denys is supported
#deny: all
#allow: 192.168.0.0/24
#allow: 192.168
# auth password must be at least 32 character
auth: WKoZ5etQdevops*%nx0l7!VqLxK9Dj%B36v
主从设置
replication:
binlog: yes
# Limit sync speed to *MB/s, -1: no limit
sync_speed: -1
slaveof:
# to identify a master even if it moved(ip, port changed)
# if set to empty or not defined, ip:port will be used.
id: svc_01
# sync|mirror, default is sync
type: mirror
ip: 192.168.0.101
port: 8888
#auth: WKoZ5etQdevops*%nx0l7!VqLxK9Dj%B36v
对于主从同步, Slave 上的 ssdb.conf 中的 slaveof.type 必须配置成 sync.
对于双主或者多主, 所有的服务器的 ssdb.conf 都必须将 slaveof.type 配置成 mirror!
对于双主或者多主, 如果不配置成 mirror 会出现什么情况? 那就是死循环! 一条 Binlog 会在所有服务器上不停地来回传递放大.
日志设置
logger:
level: debug
# log.txt|stdout(屏幕输出), default is log.txt
output: /dbfiles/ssdb_home/logs/ssdb.log
rotate:
size: 104857600
默认的配置文件监听 127.0.0.1 本地回路网络, 所以无法从其它机器上连接此 SSDB 服务器.
如果你希望从其它机器上连接 SSDB 服务器, 必须把 127.0.0.1 改为 0.0.0.0.同时, 利用配置文件的 deny, allow 指令控制IP 访问.
存储引擎设置
leveldb:
# in MB
cache_size: 512
# in KB
block_size: 32
# in MB
write_buffer_size: 64
# in MB,合并速度限制
compaction_speed: 100
#压缩 yes|no
compression: yes
# leveldb open files
max_open_files: 2048
---The End
阅读(2370) | 评论(0) | 转发(0) |