最近和实验室哥们儿一直在弄cassandra升级的事。现在总算告一段落,于是将整个过程中的点滴记下来。
原版本:
cassandra 0.6.13
pycassa 1.0.2
thrift 0.2.0
升级后:
cassandra 1.0.9
pycassa 1.7.0
thrift 0.8.0
cassandra 数据库升级
step1(configuration):
在78上完成配置完之后,直接将配置文件放到 75 76 77上(77没有被读取数据,数据依然在同步)
cassandra.yaml
seeds listen_address(不能0.0.0.0) rpc_address(0.0.0.0 所有ip都可以访问) initial_token:三台机子不一样
step2(upgrading):
先建keyspace,将104(99)原有的数据拷到75/76/77data目录下的keyspace下;在其中一台机子上建columnfamily(启动后会自己同步);启动即可访问数据
pycassa升级
step1:thrift升级
下载,解压
如果需要,安装c++
./configure
make
make install
thrift -version
step2:pycassa (105)
下载,解压
python setup.py install
基本操作:具体见《pycassa学习》一文
代码修改 见《python代码修改简记》
model pycassa type
具体操作的不同
连接(pool,cf_map),读,写,删,
面向未来:
99停机 将内存中数据刷到sstable中,按照cassandra步骤升级
103 104 安装各种依赖包,进行pycassa测试,确保能够正常访问数据库,可以写一段python代码完整测试
105python代码中columnfamilymap 第一行可以删除,效率或许可以提高
Thrift升级(pycassa1.7需要thrift0.8版本)
1、下载thrift的.tar.gz源文件;
2、解压并进入文件,之后运行./conffigure,这里出现了一下依赖问题
Error:libcrypto required* 这个问题需要安装libssl-dev,在105上这个包依赖于其他的一些包,可分别下载安装(http://www.cnblogs.com/cerxp/archive/2012/02/10/2345535.html);
3、./configure运行成功后,运行make & make install即可;
4、用thrift -version命令可查看到软件更新已完成。
注:thrift安装需要安装g++,如果发现configure执行完成之后不能够运行make命令很有可能是这个原因
1、下载thrift的.tar.gz源文件;
2、解压并进入文件,之后运行./conffigure,这里出现了一下依赖问题
Error:libcrypto required* 这个问题需要安装libssl-dev,在105上这个包依赖于其他的一些包,可分别下载安装(http://www.cnblogs.com/cerxp/archive/2012/02/10/2345535.html);
3、./configure运行成功后,运行make & make install即可;
4、用thrift -version命令可查看到软件更新已完成。
注:thrift安装需要安装g++,如果发现configure执行完成之后不能够运行make命令很有可能是这个原因
python setup.py install 出现问题

python tarfile.read error file could not be opened successfully python 2.6.5
solution: 连网