需求是爬取QQ空间好友说说之后存入自己的服务器,之前使用 mysql5.6 版本,获取说说后需要解析json,在往 mysql 写入时候总是报错。于是乎,便想着用 MongoDB,开始了踩坑之旅。
安装启动
随手一搜,造福国人的镜像站
https://mirrors.tuna.tsinghua.edu.cn/help/mongodb/ # 清华镜像站
这里我是阿里云 ecs 实例 contos7 直接粘贴了命令
vim /etc/yum.repos.d/mongodb.repo
添加 repo 信息
[mongodb-org]
name=MongoDB Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mongodb/yum/el$releasever/
gpgcheck=0
enabled=1
刷新缓存并安装 mongodb-org
sudo yum makecache
sudo yum install mongodb-org
目前为止一切顺利,mongo 一下
mongo # mongo 连接 mongo 的命令行工具 具体可自行 mongo -h
MongoDB shell version: 3.2.21
connecting to: test
2018-09-28T09:49:41.620+0800 W NETWORK [thread1] Failed to connect to 127.0.0.1:27017, in(checking socket for error after poll), reason: errno:111 Connection refused
2018-09-28T09:49:41.620+0800 E QUERY [thread1] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed :
connect@src/mongo/shell/mongo.js:229:14
@(connect):1:6
exception: connect failed
一脸o((⊙﹏⊙))o,查了好久原来是服务未启动。
那就启动一下呗 mongod 一下
sudo mongod # 害怕权限不够 加了 sudo 然鹅。。。
2018-09-28T09:55:37.570+0800 I CONTROL [initandlisten] build environment:
2018-09-28T09:55:37.570+0800 I CONTROL [initandlisten] distmod: rhel70
2018-09-28T09:55:37.570+0800 I CONTROL [initandlisten] distarch: x86_64
2018-09-28T09:55:37.570+0800 I CONTROL [initandlisten] target_arch: x86_64
2018-09-28T09:55:37.570+0800 I CONTROL [initandlisten] options: {}
2018-09-28T09:55:37.596+0800 I STORAGE [initandlisten] exception in initAndListen: 29 Data directory /data/db not found., terminating
2018-09-28T09:55:37.596+0800 I CONTROL [initandlisten] dbexit: rc: 100
二脸o((⊙﹏⊙))o,注意到 Data directory /data/db not found.
都是不认真看文档惹的祸。新建目录 不建议。sudo mkdir -p /data/db
存放数据,
推荐通过配置指定数据目录、日志目录、账户、密码等。
本着先跑起来的理念 sudo mongod
2018-09-28T10:17:54.877+0800 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
2018-09-28T10:17:54.877+0800 I NETWORK [initandlisten] waiting for connections on port 27017
2018-09-28T10:17:54.877+0800 I NETWORK [HostnameCanonicalizationWorker] Starting hostname canonicalization worker
看起来目录初始化成功了,并在 27017 端口监听了。我们重新打开一个终端 mongo
一下,啊哈开心,试着敲两个命令。
2018-09-28T10:17:54.842+0800 I CONTROL [initandlisten]
> '1314'+'520'
1314520
> 5*7
35
>
成功啦!!!
我有很多情话
林林总总嘴巴放不下
最乐意讲给你听
你可一定收下
找我换牵挂早安
孤独小美
格致别趣
六点起床第559天 迟到35天
配首小诗庆祝一下。
心路历程
之前没启动起来的时候,以为是安装的方式有问题。所以用 docker 方式安装了一下,折腾老半天。还是因为没有启动,连接不到服务器,之后一定要好好试一下 docker 下的使用。加油!!!
配置
当然不能停留在跑起来这个层面,回到启动 mongo 的那个终端 control+z 一下关闭 mongo 服务。新建数据目录.
mkdir -p /Users/anshi/Desktop/resource/anshi/datamongo/data/db
创建配置文件
vim /Users/anshi/Desktop/resource/anshi/datamongo/zi.config
添加如下内容
dbpath = /Users/anshi/Desktop/resource/anshi/datamongo/data/db
运行命令
mongod -f /Users/anshi/Desktop/resource/anshi/datamongo/zi.config
此时 mongo 已经将数据目录指向自定义的 db 文件目录了,可以看到 db 目录下
![](https://img.haomeiwen.com/i7672800/4609c5695ea261f2.png)
参数 -f
指定启动时使用的配置文件
网友评论