龙芯3A2000移植RethinkDB指南

一、RethinkDB简介
  • 用于构建实时Web应用程序的开源数据库
  • NoSQL数据库,存储无模式JSON文档
  • 易于扩展的分布式数据库
  • 具有自动故障转移和稳健容错的高可用性数据库

        其核心是一个高度并行的B树实现。

二、移植环境
        软件环境:
       (1)loongnix1.0系统。下载地址:www.loongnix.org
       (2)内核版本:3.10.84
        硬件环境:
       (1)开发板类型:Loongson-3A2000-780E-4w-V0.1-demo
       (2)固件版本:loongson-PMON-V3.3.0

三、移植过程
        安装依赖软件:
sudo yum install gcc-c++ protobuf-devel ncurses-devel jemalloc-devel \
boost-static wget protobuf-compiler which zlib-devel \
openssl-devel libcurl-devel make m4

wget http://ftp.loongnix.org/others/server/RethinkDB/jemalloc-4.2.1-1.fc21.loongson.mips64el.rpm
wget http://ftp.loongnix.org/others/server/RethinkDB/jemalloc-devel-4.2.1-1.fc21.loongson.mips64el.rpm

sudo rpm -Uvh jemalloc-4.2.1-1.fc21.loongson.mips64el.rpm jemalloc-devel-4.2.1-1.fc21.loongson.mips64el.rpm

        下载源码及patch文件:
        本例中使用的rethinkdb的版本为官方2.3.5版本
wget https://download.rethinkdb.com/dist/rethinkdb-2.3.5.tgz

tar xf rethink-2.3.5.tgz

wget http://ftp.loongnix.org/others/server/RethinkDB/sources/0001-rethinkdb-2.3.5-add-mips64el-support.patch

cd rethinkdb-2.3.5

patch –p1 < ../ 0001-rethinkdb-2.3.5-add-mips64el-support.patch

        编译安装RethinkDB:
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --dynamic jemalloc
make THREADED_COROUTINES=1 -j4
sudo make THREADED_COROUTINES=1 install

        配置RethinkDB(root用户):
groupadd –r rethinkdb
useradd --system --no-create-home --gid %{name} --shell /sbin/nologin --comment "RethinkDB Daemon" rethinkdb

cp /etc/rethinkdb/default.conf.sample /etc/rethinkdb/instances.d/default.conf(可根据需求进行修改)

        启动服务:
/etc/init.d/rethinkdb start
启动过程可能出现Permission错误,解决方法见FAQ。
        运行后可在浏览器中访问数据库:
        http://localhost:8080

屏幕快照_2017-03-14_上午11.49_.12_.png


四、二进制rpm包的使用
        如果觉得重新编译麻烦,可直接使用编译好的二进制rpm包:
sudo wget http://ftp.loongnix.org/others/server/RethinkDB/rethinkdb.repo -O /etc/yum.repos.d/rethinkdb.repo
sudo yum install rethinkdb
sudo cp /etc/rethinkdb/default.conf.sample /etc/rethinkdb/instances.d/default.conf
sudo /etc/init.d/rethinkdb start

注:如启动过程出现Permission错误,见FAQ。
FAQ:
(1)启动提示permission错误
需要修正目录权限
chown rethinkdb:rethinkdb /var/lib/rethinkdb –R
chown rethinkdb:rethinkdb /run/rethinkdb –R
然后重新执行启动命令。
/etc/init.d/rethinkdb start

0 个评论

要回复文章请先登录注册