MongoDB
MongoDB是一个基于分布式文件存储的高性能数据库,介于关系数据库和非关系数据库之间,它支持的数据结构非常松散是类似于json和bson格式,因此可以存储比较复杂的数据类型。
Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
主要功能特性有:
Ø 面向集合存储,易存储对象类型的数据
Ø 模式自由
Ø 支持动态查询
Ø 支持完全索引,包含内部对象
Ø 支持查询
Ø 支持复制和故障恢复
Ø 使用高效的二进制数据存储,包括大型对象(如视频等)
Ø 自动处理碎片,以支持云计算层次的扩展性
Ø 支持RUBY,PYTHON,JAVA,C++,PHP等多种语言
Ø 文件存储格式为BSON(一种JSON的扩展)
Ø 可通过网络访问
使用原理
所谓“面向集合”(Collenction-Oriented),意思是数据被分组存储在数据集中,被称为一个集合(Collenction)。每个集合在数据库中都有一个唯一的标识名,并且可以包含无限数目的文档。集合的概念类似关系型数据库(RDBMS)里的表(table),不同的是它不需要定义任何模式(schema)。
模式自由(schema-free),意味着对于存储在mongodb数据库中的文件,我们不需要知道它的任何结构定义。如果需要的话,你完全可以把不同结构的文件存储在同一个数据库里。
存储在集合中的文档,被存储为键-值对的形式。键用于唯一标识一个文档,为字符串类型,而值则可以是各种复杂的文件类型。我们称这种存储形式为BSON(Binary JSON)。
centos安装MongoDB
安装MongoDB
yum -y install mongodb mongodb-server.x86_64 mariadb-devel.i686
启动MongoDB服务
systemctl start mongod
查看MongoDB运行状态
systemctl status mongod
搭建Leanote
安装以及配置
下载Leanote二进制安装包
wget https://nchc.dl.sourceforge.net/project/leanote-bin/2.6.1/leanote-linux-amd64-v2.6.1.bin.tar.gz
解压安装包
tar -zxvf leanote-linux-amd64-v2.6.1.bin.tar.gz
tar zcvf 压缩后的路径及包名 你要压缩的文件
z:gzip压缩
c:创建压缩包
v:显示打包压缩解压过程
f:接着压缩
t:查看压缩包内容
x:解压
X:指定文件列表形式排除不需要打包压缩的文件或目录
-exclude:指定排除文件或目录不需要打包压缩的文件或目录(也可以用正则匹配/通配符等)
-C:解压到指定目录
编辑文件leanote/conf/app.conf,在文件中找到app.secret,将该项的值改为任意字符串。
初始化数据库
mongorestore -h localhost -d leanote --dir /root/leanote/mongodb_backup/leanote_install_data/
启动服务。
nohup bash /root/leanote/bin/run.sh > /root/leanote/run.log 2>&1 &
客户端测试
访问http://主机地址:9000