Tokyo Tyrant的下工具的使用
1.先启动一个测试用的ttserver
注意使用的所有路径都是绝对路径
ttserver -host 192.168.0.100 -port 20000 -thnum 4 -dmn -ulim 1024m -ulog $(pwd)/ulog/ -log $(pwd)/temp/test.log -pid $(pwd)/temp/test.pid -sid 9 $(pwd)/temp/test_data.tch#bnum=1000#rcnum=0#xmsiz=0m
2. 查看服务器统计信息
tcrmgr inform -port 20000 -st 192.168.0.100
3. 写入数据
tcrmgr put -port 20000 192.168.0.100 test1 value1
4. 读取数据
tcrmgr get -port 20000 192.168.0.100 test1
5. 删除数据
tcrmgr out -port 20000 192.168.0.100 test1
6. 查看所有的key
tcrmgr list -port 20000 192.168.0.100
7. 备份数据
注意:路径是服务器上的绝对路径,否则显示“./tcrmgr: error: 9999: miscellaneous error”
tcrmgr copy -port 20000 192.168.0.100 $(pwd)/temp/test2.tch
8. 日志导出(屏幕上打印,十六进制字符串格式)
注意:命令不同了
注意:目录是服务器上的ulog的绝对路径
ttulmgr export $(pwd)/ulog/
9. 同步内存数据到磁盘(没搞懂有什么特别之处,可能是当ttserver使用-uas参数异步写入日志的时候起作用)
tcrmgr sync -port 20000 192.168.0.100
10. 数据导入
注意:tsv格式的文件以TAB分隔,如:test2\tvalue2\n
注意:路径是本地路径,所以不必是绝对路径
tcrmgr importtsv -port 20000 192.168.0.100 temp/2.tsv
11. 通过ulog日志恢复数据
注意:路径是服务器上的绝对路径
tcrmgr restore -port 20000 192.168.0.100 $(pwd)/old_ulog/
12. 打印更新日志(挂起,一直显示日志)
可能是用于实时查看ttserver有哪些操作,相当于tail -f
tcrmgr repl -port 20000 -ph 192.168.0.100
13. 下一个实验:启动一个带复制功能的ttserver,以前面启动的ttserver为master
ttserver -host 192.168.0.100 -port 20001 -mhost 192.168.0.100 -mport 20000 -rcc -rts $(pwd)/temp_1/test_1.rts -thnum 4 -dmn -ulim 1024m -ulog $(pwd)/temp_1/ -log $(pwd)/temp_1/test_1.log -pid $(pwd)/temp_1/test_1.pid -sid 10 $(pwd)/temp_1/test_1.tch#bnum=1000#rcnum=0#xmsiz=0m
14. 再启动一个普通的ttserver,不与其他服务器相关
ttserver -host 192.168.0.100 -port 20002 -thnum 4 -dmn -ulim 1024m -ulog $(pwd)/ulog_2/ -log $(pwd)/temp_2/test_2.log -pid $(pwd)/temp_2/test_2.pid -sid 11 $(pwd)/temp_2/test_data_2.tch#bnum=1000#rcnum=0#xmsiz=0m
15. 修改某个ttserver的master
tcrmgr setmst -port 20001 -mport 20002 192.168.0.100 192.168.0.100
注意:只有以复制方式启动的ttserver,修改master后才能从新的数据库复制数据
注意:每个ttserver只能有一个master,修改后,不能再从以前的master复制数据
如何备份和恢复
登录到ttserver服务器,执行如下命令
]# tcrmgr copy -port 11211 localhost /data/backup.tch
localhost :ttserver主机名
/data/backup.tch 备份文件保存的路径,请注意,这里指ttserver所在机器的路径。
同样,也可以备份远程机器,
]# tcrmgr copy -port 11211 remotehost /data/backup.tch
备份文件将保存在remotehost的/data/backup.tch
接下来恢复数据就比较简单,直接替换掉原有ttserver的数据文件,启动就可以了。
这种方式适用于定期的数据备份,在出现灾难故障时可以恢复到某一个时间的数据。不适合用来增加从库时需要的数据库文件。
如何不停机增加从库
从库需要进行同步,那么就需要有个文件的时间版本,防止数据冲突。
首先我们建立一个一个如下的脚本文件,存为"backup.sh",并赋予执行权限(chmod 755 backup.sh)。比如存在:
/data/backup/路径下。
srcpath="$1"
destpath="$1.$2"
rm -f "$destpath"
cp -f "$srcpath" "$destpath"
接下执行如下命令,执行的时间会根据你的磁盘性能和数据大小而定。
materthost:主库主机名,请注意:backup.sh存放的路径是在materthost机器上。
'@/data/backup/backup.sh' :如果tcrmgr copy命令中,参数以@开始,那么后面的字符串作为命令行执行。
执行完成后,我们进入ttserver的数据目录,执行ls -lh会发现类似下面的文件名,
请确认产生casket.tch.xxxxx类似的文件名,xxxxx代表时间戳。
接下来在从库salve上以我们备份的文件来运行ttserver,把时间错写入到一个时间戳文件ttserver.rts。
cp casket.tch.xxxxx casket.tch
echo xxxxx >ttserver.rts
mkdir ulog
ttserver -mhost masterhost -mport mport -port 11211-ulog ulog -sid 2 -rts ttserver.rts casket.tch
运行后,ttserver将会以此时间戳进行同步。
masterhost :主库主机名
mport : 主库端口号
到此我们就完成了一个salve从库ttserver的增加。
小结
推荐备份也使用2中用到的方式,上面带上了时间戳,可以精确的知道数据的版本时间。
另外请注意:在使用此方法进行备份的时候,ttserver会在备份过程中一直保持同步阻塞和不修改数据。所以可以保证备份出来的版本跟时间戳的一致性。
转载于:https://www.cnblogs.com/kudosharry/articles/2269158.html
Tokyo Tyrant的下工具的使用相关推荐
- Tokyo Tyrant
[文章作者:张宴 本文版本:v1.4 最后修改:2010.06.11 转载请注明原文链接: http://blog.s135.com/read.php/362/] Tokyo Cabinet 是日本人 ...
- Tokyo Tyrant安装和配置
Tokyo Tyrant安装和配置 Tokyo Cabinet是日本人开发的一款DBM数据库,读写速度非常快.Tokyo Tyrant也是由同一作者开发的Tokyo Cabinet网络接口,兼容mem ...
- Tokyo Tyrant基本规范(1)--介绍和安装
Tokyo Tyrant基本规范,翻译自tt官网,地址. 本节介绍Tokyo Tyrant的基本知识和安装方法. 一.介绍 Tokyo Tyrant是名为Tokyo Cabinet的DBM的网络接口的 ...
- Tokyo Tyrant优势
相比Memcachedb而言,Tokyo Tyrant具有以下优势: 1.故障转移:Tokyo Tyrant支持双机互为主辅模式,主辅库均可读写,而Memcachedb目前支持类似MySQL主辅库同步 ...
- MongoDB与Tokyo Tyrant性能比较(2):并发写入操作
在上一次的测试中我们比较了MongoDB与Tokyo Tyrant的Table Database两种存储方式的性能.不过由于条件限制,我只能在自己的MBP上测试,而这至少会带来两个问题.首先,真实环境 ...
- Tokyo Cabinet及Tokyo Tyrant tcb tch比较分析
TC(Tokyo Cabinet )是日本人 平林幹雄 开发的一款 Key-Value 键值数据库,该数据库读写非常快,哈希模式写入100万条数据只需0.402秒,读取100万条数据只需0.334秒. ...
- Tokyo Tyrant基本规范(4)--协议
本节介绍Tokyo Tyrant的远程数据库API,Lua扩展和协议.部分细节内容没有翻译. 五. 远程数据库API 远程数据库是一组用于使用Tokyo Cabinet抽象数据库的接口,由Tokyo ...
- Tokyo Tyrant (ttserver)的master-slave复制协议分析
Tokyo Tyrant (ttserver)的master-slave复制协议分析 The replication ...
- 请注意Tokyo Tyrant (ttserver)在大数据量下的不稳定
[文章作者:孙立 链接:http://www.cnblogs.com/sunli/ 更新时间:2010-06-20] ttserver不稳定案例 1. CMS a系统的文章采用了ttserver存储. ...
最新文章
- Iaas-Paas-Saas
- 《Oracle从入门到精通》读书笔记第八章 管理表空间和数据文件之二
- python模块之collections模块
- 监控h264视频不能正常解码怎么办
- 很久很久以前,我国有一批电脑高手
- 51Nod 1873 - 初中的算术(JAVA)
- Windows核心编程_窗口属性表
- 网络管理常用命令(6/14) -netstat命令详解
- 公主与骑士-ZZUOJ
- android从相册或拍照获取照片第三方开源库TakePhoto
- ERROR:ORA-01031:insufficient privileges完美解决方法
- 【软件测试】—— 基础知识总结
- sprintf你知道多少
- DHL供应链将再投资2.18亿欧元加码中国市场
- 智能机器人客服 让对话“恰到好处
- Python 四大数据类型总结
- Python 获取线程返回值获取
- c语言 整数类型,C语言的数据类型——整数类型和浮点类型
- PA8题解报告——平均气温(Temperature)
- 你用esp8266做出过什么有趣的东西?