最近运维做的比较多,需要在服务器上安装配置Mongodb
。
也喜欢Linux
,顺便记录一下,方便自己也利于他人。借用老话来说就是:前人栽树后人乘凉。
有时候想想,当个技术中的前辈也还蛮不错的。:)
Linux
系统为:CentOS 7
MacBook Pro (13-inch, 2017, Two Thunderbolt 3 ports)
mac版的终端
Mongodb
工具:Robo 3T
如果上述环境不一致,可能导致无法预知的错误。请知晓!
Mongodb
压缩包ssh
命令远程连接上服务器实现远程操控$ ssh [email protected]
Mongodb
压缩包有两种获取方式,一种是直接在服务器上通过wget
命令下载,不过这种方式需要服务器能够连接网络;另一种是通过scp
命令将本地已经下载好的压缩包上传到服务器,该方式相对来说限制小,无需服务器连接网络。
使用wget
命令下载方式:
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.10.tgz
使用scp
命令上传方式:
scp a/b/mongodb-linux-x86_64-rhel70-4.0.10.tgz [email protected]:/home/zouqi
说明:其中
a/b/
是本地的mongodb
压缩包所在的目录,将其上传的目标地址是服务器上的/home/zouqi
目录下,上面scp
命令需要在本地机器的终端进行哦,别搞混了啊!
Mongodb
压缩包tar
命令进行解压tar -xzvf mongodb-linux-x86_64-rhel70-4.0.10.tgz
解压成功后能看到对应压缩包命名的文件夹目录
mv
命令将解压后的目录移动到/usr/local/
文件夹下并重新命名为mongodb
sudo mv mongodb-linux-x86_64-rhel70-4.0.10 /usr/local/mongodb
一般在
/usr/local
目录下面放置用户自行安装的软件
root
权限 su - root
vim /etc/profile
添加内容为:export PATH=/usr/local/mongodb/bin:$PATH
,记得填写正确mongodb目录所在路径,添加完后如下图示:
$ cd ~
$ source /etc/profile
配置成功后,就可以很方便的使用mongod命令了,如图是该命令的帮助提示:
cd /usr/local/mongodb
touch mongodb.conf
mkdir db
mkdir log
cd log
touch mongodb.log
mongodb.conf
表示mongodb
的配置文件db
目录表示数据库文件存放目录mongodb.log
表示日志文件存放处创建这些文件或者目录是为了配置用,下面会作说明。
Mongodb
配置文件添加配置内容vim
命令编辑配置文件cd /usr/local/mongodb
vim mongodb.conf
添加内容如下:
port=27017 #端口
dbpath=/usr/local/mongodb/db #数据库文件存放目录
logpath=/usr/local/mongodb/logs/mongodb.log #日志文件存放路径
logappend=true #使用追加的方式写日志
fork=true #以守护进程的方式,创建服务器进程
maxConns=100 #最大同时连接数
journal=true #每次写入会记录一条操作日志
bind_ip=0.0.0.0 #可外部访问
auth=true #用户认证
为了避免不必要的麻烦,设置文件目录对所有用户组都可读写,保证能往文件里面写入数据。
chomd 777 /usr/local/mongodb/db
chomd 777 /usr/local/mongodb/log
mongodb
mongod -f /usr/local/mongodb/mongodb.conf
启动成功后显示如下:
由于配置文件中启用了用户认证,所以这里先为数据库创建用户名和密码为后面使用Robo 3T
远程连接验证做准备。
如果未做该步操作直接使用Robo 3T
远程连接,会报错,提示:Error: Failed to execute "listdatabases" command
不过不要紧,已经找到了对应的解决办法:就是为数据库添加用户名和密码。
这推荐两个技术链接,请自行根据所给链接文章的步骤去创建用户,这里我就不详细说明了,因为链接文章实在是写的很好,我自认为无需再画蛇添足了。;)链接如下:
安装完成以后使用Robo 3T连接Mongo的时候出现了这么个错误Error: Failed to execute “listdatabases” command
MongoDB 设置用户名密码登录
简单操作步骤如下:
cd /usr/local/mongodb/bin
./mongo
上面命令执行后,成功打开数据库如下图:
use admin
db.createUser({user:"admin",pwd:"123456",roles:["root"]})
db.auth("admin","123456")
验证成功如下图示:
Robo 3T
下载安装自行去官网下载安装即可。
Robo 3T官网地址
Mongodb
远程连接验证这是原来远程登录验证时保存的一个连接,给大家看看里面的设置。
Connection
页面Authentication
页面SSH
页面这里输入使用ssh
远程登录时对应用户的密码,然后点击OK
按钮,如下图示:
登录成功,验证通过。
A little bit of progress every day!Come on!