ssdb 主从同步复制配置详细步骤


SSDB 的配置文件是一种层级 key-value 的静态配置文件, 通过一个 TAB 缩进来表示层级关系. 以 ‘#’ 号开始的行是注释. 

ssdb的使用遵循redis协议,读写性能都特别快。

有时我们在使用数据库时,像mongodb,redis和一些关系行数据,为了使数据更加安全,作为备份使用我们经常习惯使用主从复制架构,当主机上的数据出现问题时,我们就可以连接到slave机器

也就是另外一台机器会从主机上进行同步数据,如果我们使用linux命令 netstat -apn,会发现slave机器上的ssdb会和主机上的ssdb服务建立连接,如果我们这时往主机的ssdb导入数据

会发现slave机器上也会有相应的数据更新。

具体配置如下所示(我这里假设master机器的IP为:10.100.300.1端口:8888)

这是slave机器的配置,

# ssdb-server config
# MUST indent by TAB!

# relative to path of this file, directory must exists
work_dir = ./2014_12_1
pidfile = ./2014_12_1/ssdb.pid

server:
	ip: 0.0.0.0
	port: 8888
	# bind to public ip
	#ip: 0.0.0.0
	# format: allow|deny: all|ip_prefix
	# multiple allows or denys is supported
	#deny: all
	#allow: 127.0.0.1
	#allow: 192.168

replication:
	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_2
		# sync|mirror, default is sync
		type: sync
		ip: 10.100.300.1
		port: 8888

logger:
	level: info
	output: log.txt
	rotate:
		size: 1000000000

leveldb:
	# in MB
	cache_size: 1024
	# in KB
	block_size: 64
	# in MB
	write_buffer_size: 256
	# in MB
	compaction_speed: 100
	# yes|no
	compression: no

这是master机器配置

# ssdb-server config
# MUST indent by TAB!

# relative to path of this file, directory must exists
work_dir = ./var_update
pidfile = ./var_update/ssdb.pid

server:
	ip: 0.0.0.0
	port: 8888
	# bind to public ip
	#ip: 0.0.0.0
	# format: allow|deny: all|ip_prefix
	# multiple allows or denys is supported
	#deny: all
	#allow: 127.0.0.1
	#allow: 192.168

replication:
	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_2
		# sync|mirror, default is sync
		#type: sync
		#ip: 127.0.0.1
		#port: 8889

logger:
	level: info
	output: log.txt
	rotate:
		size: 1000000000

leveldb:
	# in MB
	cache_size: 300
	# in KB
	block_size: 64
	# in MB
	write_buffer_size: 256
	# in MB
	compaction_speed: 100
	# yes|no
	compression: no

work_dir: ssdb-server 的工作目录, 启动后, 会在这个目录下生成 data 和 meta 两个目录, 用来保存 LevelDB 的数据库文件. 这个目录是相对于 ssdb.conf 的相对路径, 也可以指定绝对路径.

server: ip 和 port 指定了服务器要监听的 IP 和端口号. 如果 ip 是 0.0.0.0, 则表示绑定所有的 IP. 基于安全考虑, 可以将 ip 设置为 127.0.0.1, 这样, 只有本机可以访问了. 如果要做更严格的更多的网络安全限制, 就需要依赖操作系统的 iptables.

replication: 用于指定主从同步复制. slaveof.ip, slaveof.port 表示, 本台 SSDB 服务器将从这个目标机上同步数据(也即这个配置文件对应的服务器是 slave). 你可以参考 ssdb_slave.conf 的配制.

logger: 配置日志记录. level 是日志的级别, 可以是 trace|debug|info|error. output 是日志文件的名字, SSDB 支持日志轮转, 在日志文件达到一定大小后, 将 log.txt 改名, 然后创建一个新的 log.txt.

leveldb: 配置 LevelDB 的参数. 你一般想要修改的是 cache_size 参数, 用于指定缓存大小. 适当的缓存可以提高读性能, 但是过大的缓存会影响写性能.

时间: 2024-07-28 15:48:23

ssdb 主从同步复制配置详细步骤的相关文章

mysql5.5主从同步复制配置

在上篇文章<烂泥:学习mysql数据库主从同步复制原理>中,我们介绍了有关mysql主从复制的基本原理.在这篇文章中,我们来实际测试下mysql5.5的主从同步复制功能. 注意mysql5.1.7以前版本与其以后的版本在主从同步部分参数不同.mysql5.1.7以后的版本中不支持master-connect-retry之类的参数.如果在my.cnf文件中加入该类似的参数,mysql会在下次重启时报错. 说明:主库master与从库slave都是centos6.5 64bit,如下: cat /

烂泥:mysql5.5主从同步复制配置

本文首发于烂泥行天下. 在上篇文章<烂泥:学习mysql数据库主从同步复制原理>中,我们介绍了有关mysql主从复制的基本原理.在这篇文章中,我们来实际测试下mysql5.5的主从同步复制功能. 注意mysql5.1.7以前版本与其以后的版本在主从同步部分参数不同.mysql5.1.7以后的版本中不支持master-connect-retry之类的参数.如果在my.cnf文件中加入该类似的参数,mysql会在下次重启时报错. 说明:主库master与从库slave都是centos6.5 64b

MySQL的3节点主从同步复制方案

上篇文章<为什么要对MySQL做主从同步复制>我们说明了MySQL主从同步的作用,主从同步的原理和主从同步的缺点.下面我们介绍下3节点中:2个节点互为主从,1个节点作为前2个节点的从,用于实现MySQL5.6的3节点主从同步复制方案. 主要步骤如下: 1.配置MasterA端同步复制时所需要的选项 2.在MasterA主库上创建同步复制时的用户并授权 3.MasterA主库锁表 4.记录MasterA主库的binlog以及pos位置节点 5.导出MasterA主库m_s_rep数据库 6.配置

Nginx+php-fpm环境配置详细步骤

   Nginx+php-fpm环境配置详细步骤 最全的Nginx各种版本下载地址:http://nginx.org/download/ 一.编译安装php-fpm 什么是PHP-FPM PHP-FPM是一个PHP FastCGI管理器,是只用于PHP的,可以在 http://php-fpm.org/download下载得到. PHP-FPM其实是PHP源代码的一个补丁,旨在将FastCGI进程管理整合进PHP包中.必须将它patch到你的PHP源代码中,在编译安装PHP后才可以使用. 新版PH

MySQL的3节点主从同步复制方案测试

上接<MySQL的3节点主从同步复制方案> 六.测试主从同步复制 现在我们来测试下,mysql的主从同步. 1.在主库插入测试数据 先在主库MasterA 上给m_s_rep数据库插入和删除2条数据.如下: mysql> insert into test(id,content) values(3,'data3'); mysql> insert into test(id,content) values(2,'data2'); mysql> select * from test;

mariadb实现主从加密通讯的详细步骤

mariadb实现主从加密通讯的详细步骤 1. 实验环境: A. 3台centos7服务器,mariadb版本:5.5.60 B. 服务器角色: a) master节点:192.168.36.121 b) slave节点:192.168.36.120 c) CA服务器:192.168.36.47 2. 具体步骤: A. CA服务器: a) 创建存放证书和私钥的目录 mkdir -p /etc/my.cnf.d/ssl b) 生成CA私钥 cd /etc/my.cnf.d/ssl ( umask

使用IDEA创建javaweb项目并配置详细步骤+导出war包详细步骤

参考 使用IDEA创建javaweb项目并配置详细步骤+导出war包详细步骤 原文地址:https://www.cnblogs.com/slbb/p/9360344.html

MySQL主从同步(复制)的配置

1.主从复制的原理: *Master,记录数据更改操作 - 启用binlog记录模式 - 允许Slave读取binlog日志 *Slave运行2个同步线程 - Slave_IO:负责连接Master,复制其binlog日志文件到本机的relay-log文件 - Slave_SQL:执行本机relay-log文件里的SQL语句,重现Master的数据操作 2.基本构建思路: 1)初始化现有库:将主库导入从库,确保数据一致性 2)配置Master,主服务器:调整运行参数,授权一个同步用户 3)配置S

Mysql主从原理和复制配置详细讲解

如果配置了多个从服务器或者多个主服务器又涉及到相应的负载均衡问题,关于负载均衡具体的技术细节还没有研究过,今天就先简单的实现一主一从的主从复制功能 将主数据库中的DDL和DML操作通过二进制日志(BINLOG)传输到从数据库上,然后将这些日志重新执行(重做):从而使得从数据库的数据与主数据库保持一致. 1.主数据库出现问题,可以切换到从数据库. 2.可以进行数据库层面的读写分离, 3.可以在从数据库上进行日常备份 Binary log:主数据库的二进制日志 Relay log:从服务器的中继日志