安装MongoDB
下载MongoDB提供了linux平台上32位和64位的安装包,你可以在官网下载安装包下载地址:
http://www.mongodb.org/downloads
安装
下载完成后,在你安装的目录下解压zip包。
创建数据库目录
MongoDB的数据存储在data目录的db目录下,但是这个目录在安装过程不会自动创建,所以你需要手动创建data目录,并在data目录中创建db目录。
以下实例中我们将data目录创建于根目录下(/)。
注意:/data/db 是 MongoDB 默认的启动的数据库路径(–dbpath)。
mkdir -p /data/db
命令行中运行 MongoDB 服务
你可以再命令行中执行mongo安装目录中的bin目录执行mongod命令来启动mongdb服务。
注意:如果你的数据库目录不是/data/db,可以通过 –dbpath 来指定。
$ ./mongod2015-09-25T16:39:50.549+0800 I JOURNAL [initandlisten] journal dir=/data/db/journal2015-09-25T16:39:50.550+0800 I JOURNAL [initandlisten] recover : no journal files present, no recovery needed2015-09-25T16:39:50.869+0800 I JOURNAL [initandlisten] preallocateIsFaster=true 3.162015-09-25T16:39:51.206+0800 I JOURNAL [initandlisten] preallocateIsFaster=true 3.522015-09-25T16:39:52.775+0800 I JOURNAL [initandlisten] preallocateIsFaster=true 7.7
MongoDB后台管理 Shell
如果你需要进入MongoDB后台管理,你需要先打开mongodb装目录的下的bin目录,然后执行mongo命令文件。
MongoDB Shell是MongoDB自带的交互式Javascript shell,用来对MongoDB进行操作和管理的交互式环境。
当你进入mongoDB后台后,它默认会链接到 test 文档(数据库):
$ cd /usr/local/mongodb/bin
$ ./mongoMongoDB shell version: 3.0.6
connecting to: testWelcome to the MongoDB shell.……
由于它是一个JavaScript shell,您可以运行一些简单的算术运算:
2+24> 3+69
现在让我们插入一些简单的数据,并对插入的数据进行检索:
db.W3Cschool.insert({x:10})WriteResult({ “nInserted” : 1 })> db.W3Cschool.find(){ “_id” : ObjectId(“5604ff74a274a611b0c990aa”), “x” : 10 }>
第一个命令是将数据 8 插入到w3r集合(表)的 z 字段中。
MongoDb web 用户界面
MongoDB 提供了简单的 HTTP 用户界面。 如果你想启用该功能,需要在启动的时候指定参数 –rest 。
$ ./mongod –dbpath=/data/db –rest
MongoDB 的 Web 界面访问端口比服务的端口多1000。
如果你的MongoDB运行端口使用默认的27017,你可以在端口号为28017访问web用户界面,即地址为:
http://localhost:28017
。
MongoDB 创建数据库
语法MongoDB 创建数据库的语法格式如下:
use DATABASE_NAME
如果数据库不存在,则创建数据库,否则切换到指定数据库。
以下实例我们创建了数据库 youj:
use youj
switched to db youj
db
youj
如果你想查看所有数据库,可以使用 show dbs 命令:
show dbs
local 0.078GB
test 0.078GB
可以看到,我们刚创建的数据库 youj 并不在数据库的列表中, 要显示它,我们需要向 youj 数据库插入一些数据。
db.youj.insert({“name”:“pan”})
WriteResult({ “nInserted” : 1 })
show dbs
local 0.078GB
youj 0.078GB
test 0.078GB
MongoDB 中默认的数据库为 test,如果你没有创建新的数据库,集合将存放在 test 数据库中。
插入文档
MongoDB 使用 insert() 或 save() 方法向集合中插入文档,语法如下:
db.COLLECTION_NAME.insert(document)
实例
以下文档可以存储在 MongoDB 的 pan数据库 的 col集合中:
db.col.insert({title: ‘MongoDB 教程’,
description: ‘MongoDB 是一个 Nosql 数据库’,
by: ‘w3cschool’,
url: ‘
http://www.baidu.com
’,
tags: [‘mongodb’, ‘database’, ‘NoSQL’],
likes: 100})
以上实例中 col 是我们的集合名,前一章节我们已经创建过了,如果该集合不在该数据库中, MongoDB 会自动创建该集合并插入文档。
查看已插入文档:
db.col.find(){ “_id” : ObjectId(“56064886ade2f21f36b03134”), “title” : “MongoDB 教程”, “description” : “MongoDB 是一个 Nosql 数据库”, “by” : “w3cschool”, “url” : “
http://www.baidu.com
”, “tags” : [ “mongodb”, “database”, “NoSQL” ], “likes” : 100 }>
我们也可以将数据定义为一个变量,如下所示:
document=({title: ‘MongoDB 教程’,
description: ‘MongoDB 是一个 Nosql 数据库’,
by: ‘w3cschool’,
url: ‘
http://www.baidu.com
’,
tags: [‘mongodb’, ‘database’, ‘NoSQL’],
likes: 100});
执行后显示结果如下:
{
“title” : “MongoDB 教程”,
“description” : “MongoDB 是一个 Nosql 数据库”,
“by” : “w3cschool”,
“url” : “
http://www.baidu.com
”,
“tags” : [
“mongodb”,
“database”,
“NoSQL”
],
“likes” : 100}
执行插入操作:
db.col.insert(document)WriteResult({ “nInserted” : 1 })>
插入文档你也可以使用 db.col.save(document) 命令。如果不指定 _id 字段 save() 方法类似于 insert() 方法。如果指定 _id 字段,则会更新该 _id 的数据。
Redis 安装
下载地址:
http://redis.io/download,下载最新文档版本。
本教程使用的最新文档版本为 2.8.17,下载并安装:
$ wget
http://download.redis.io/releases/redis-2.8.17.tar.gz
$ tar xzf redis-2.8.17.tar.gz
$ cd redis-2.8.17
$ make
make完后 redis-2.8.17目录下会出现编译后的redis服务程序redis-server,还有用于测试的客户端程序redis-cli
下面启动redis服务.
$ ./redis-server
注意这种方式启动redis 使用的是默认配置。也可以通过启动参数告诉redis使用指定配置文件使用下面命令启动。
$ ./redis-server redis.conf
redis.conf是一个默认的配置文件。我们可以根据需要使用自己的配置文件。
启动redis服务进程后,就可以使用测试客户端程序redis-cli和redis服务交互了。 比如:
$ ./redis-cli
redis> set foo bar
OK
redis> get foo
“bar”
在 Ubuntu 系统安装 Redi 可以使用以下命令:
$sudo apt-get update
$sudo apt-get install redis-server
启动 Redis
$redis-server
查看 redis 是否启动?
$redis-cli
以上命令将打开以下终端:
redis 127.0.0.1:6379>
127.0.0.1 是本机 IP ,6379 是 redis 服务端口。现在我们输入 PING 命令。
redis 127.0.0.1:6379> ping
PONG
以上说明我们已经成功安装了redis。
Redis 配置
Redis 的配置文件位于 Redis 安装目录下,文件名为 redis.conf(Windows 名为 redis.windows.conf)。
你可以通过 CONFIG 命令查看或设置配置项。
语法
Redis CONFIG 命令格式如下:
redis 127.0.0.1:6379> CONFIG GET CONFIG_SETTING_NAME
实例
redis 127.0.0.1:6379> CONFIG GET loglevel
-
“loglevel”2) “notice”
使用 * 号获取所有配置项:
实例
redis 127.0.0.1:6379> CONFIG GET * -
“dbfilename”
-
“dump.rdb”
-
“requirepass”
-
“”
-
“masterauth”
-
“”
-
“unixsocket”
-
“”
-
“logfile”
-
“”
-
“pidfile”
-
“/var/run/redis.pid”
-
“maxmemory”
-
“0”
-
“maxmemory-samples”
-
“3”
-
“timeout”
-
“0”
-
“tcp-keepalive”
-
“0”
-
“auto-aof-rewrite-percentage”
-
“100”
-
“auto-aof-rewrite-min-size”
-
“67108864”
-
“hash-max-ziplist-entries”
-
“512”
-
“hash-max-ziplist-value”
-
“64”
-
“list-max-ziplist-entries”
-
“512”
-
“list-max-ziplist-value”
-
“64”
-
“set-max-intset-entries”
-
“512”
-
“zset-max-ziplist-entries”
-
“128”
-
“zset-max-ziplist-value”
-
“64”
-
“hll-sparse-max-bytes”
-
“3000”
-
“lua-time-limit”
-
“5000”
-
“slowlog-log-slower-than”
-
“10000”
-
“latency-monitor-threshold”
-
“0”
-
“slowlog-max-len”
-
“128”
-
“port”
-
“6379”
-
“tcp-backlog”
-
“511”
-
“databases”
-
“16”
-
“repl-ping-slave-period”
-
“10”
-
“repl-timeout”
-
“60”
-
“repl-backlog-size”
-
“1048576”
-
“repl-backlog-ttl”
-
“3600”
-
“maxclients”
-
“4064”
-
“watchdog-period”
-
“0”
-
“slave-priority”
-
“100”
-
“min-slaves-to-write”
-
“0”
-
“min-slaves-max-lag”
-
“10”
-
“hz”
-
“10”
-
“no-appendfsync-on-rewrite”
-
“no”
-
“slave-serve-stale-data”
-
“yes”
-
“slave-read-only”
-
“yes”
-
“stop-writes-on-bgsave-error”
-
“yes”
-
“daemonize”
-
“no”
-
“rdbcompression”
-
“yes”
-
“rdbchecksum”
-
“yes”
-
“activerehashing”
-
“yes”
-
“repl-disable-tcp-nodelay”
-
“no”
-
“aof-rewrite-incremental-fsync”
-
“yes”
-
“appendonly”
-
“no”
-
“dir”
-
“/home/deepak/Downloads/redis-2.8.13/src”
-
“maxmemory-policy”100) “volatile-lru”101) “appendfsync”102) “everysec”103) “save”104) “3600 1 300 100 60 10000″105) “loglevel”106) “notice”107) “client-output-buffer-limit”108) “normal 0 0 0 slave 268435456 67108864 60 pubsub 33554432 8388608 60″109) “unixsocketperm”110) “0”111) “slaveof”112) “”113) “notify-keyspace-events”114) “”115) “bind”116) “”
编辑配置
你可以通过修改 redis.conf 文件或使用 CONFIG set 命令来修改配置。
语法
CONFIG SET 命令基本语法:
redis 127.0.0.1:6379> CONFIG SET CONFIG_SETTING_NAME NEW_CONFIG_VALUE
实例
redis 127.0.0.1:6379> CONFIG SET loglevel “notice”
OK
redis 127.0.0.1:6379> CONFIG GET loglevel
- “loglevel”2) “notice”