mongodb安装、运行
1.下载安装:
切换到:/usr/local/
mkdir -p mongodb
groupadd -g 800 mongodb
useradd -u 801 -g mongodb mongodb
chown -R mongodb.mongodb mongodb/
cd /usr/local/mongodb
2.下载:
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.6.4.tgz
3.
解压:
tar -zxvf
mongodb-linux-x86_64-3.6.4.tgz
4.
新建数据库目录及日志目录
mkdir -p /usr/local/mongodb/mongodb-linux-x86_64-3.6.4/data
mkdir -p /usr/local/mongodb/mongodb-linux-x86_64-3.6.4/logs
mkdir -p /usr/local/mongodb/mongodb-linux-x86_64-3.6.4/conf
cd /usr/local/mongodb/mongodb-linux-x86_64-3.6.4/conf
5.新建mongod.conf文件:
vim mongod.conf
systemLog:
destination: file
logAppend: true
path: /mnt/mongodb/mongodb-linux-x86_64-3.6.4/logs/mongod.log
storage:
# dbPath: /var/lib/mongo
dbPath: /mnt/mongodb/mongodb-linux-x86_64-3.6.4/data
journal:
enabled: true
processManagement:
fork: true # fork and run in background
pidFilePath: /mnt/mongodb/mongodb-linux-x86_64-3.6.4/logs/mongod.pid # location of pidfile
timeZoneInfo: /usr/share/zoneinfo
# network interfaces
net:
port: 27017
#bindIp: 127.0.0.1 # Listen to local interface only, comment to listen on all interfaces.
bindIp: 0.0.0.0 # Listen to local interface only, comment to listen on all interfaces.
#security:
security:
authorization: enabled
javascriptEnabled: false
6.编辑环境变量:
vim /etc/profile
export MONGODB_HOME=/usr/local/mongodb/mongodb-linux-x86_64-3.6.4/
export PATH=${MONGODB_HOME}/bin:$PATH
source /etc/profile #
使之生效
7.启动mongodb:
./mongod -f /usr/local/mongodb/mongodb-linux-x86_64-3.6.4/conf/mongod.conf
8.设置开机启动:
vim /etc/init.d/mongodb
#!/bin/sh
# chkconfig: 2345 75 15
# description: mongodb
### BEGIN INIT INFO
# Provides: mongodb
# Required-Start:
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: mongodb
# Description: mongo db server
### END INIT INFO
EXE_FILE=/usr/local/mongodb/mongodb-linux-x86_64-3.6.4/bin/mongod
CONFIG_FILE=/usr/local/mongodb/mongodb-linux-x86_64-3.6.4/conf/mongodb.conf
#. /lib/lsb/init-functions
MONGOPID=`ps -ef| grep mongod| grep -v grep| awk '{print $2}'`
test -x $EXE_FILE || exit 0
case "$1" in
start)
ulimit -n 3000
$EXE_FILE --config $CONFIG_FILE
;;
stop)
if [ ! -z "$MONGOPID" ]; then
kill -15 $MONGOPID
fi
;;
status)
ps -aux| grep mongod
;;
*)
log_success_msg "Usage: /etc/init.d/mongodb {start|stop|status}"
exit 1
esac
exit 0
8.
设置开机启动:
service mongodb start //
启动
mongodb
服务
chkconfig mongodb on //
开启开机启动
9.
登陆
mongodb
及新建用户:
mongo
db
show dbs
use admin
db.auth("admin","testmongodb89")
db.system.users.find()
创建超级管理员
db.createUser({user:"xwgl",pwd:"testmongodb89",roles:[{ role: "dbAdmin", db: "xwgl" }]}) 创建单个数据库管理员
10.登陆mongodb:
mongo -u admin -p --authenticationDatabase admin
===========================================================================================
官网地址:https://www.mongodb.com/
在官网上选择不同的linux系统得到不同的下载地址,我们用的下载地址是:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.4.3.tgz
1.mongodb的安装及连接
cd opt/
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.4.3.tgz #下载
tar zxvf mongodb-linux-x86_64-rhel62-3.4.3.tgz #解压
cd ../
mkdir -p /usr/local/mongodb #创建mongodb的安装目录
mv /opt/mongodb-linux-x86_64-rhel62-3.4.3 /usr/local/mongodb #移动解压文件到安装目录
mkdir -p /data/mongodb/data #创建mongodb数据库存放路径
mkdir -p /data/mongodb/log #创建mongodb日志存放路径
touch/data/mongodb/log/mongodb.log #创建mongodb日志文件
/usr/local/mongodb/bin/mongod –dbpath=/data/mongodb/data –logpath= /data/mongodb/log/mongodb.log –logappend –port 27017 --fork
#启动mongodb服务
(注:mongodb默认不需要输入用户名和密码,出于安全考虑,我们可以设置用户名和密码,详见mongodb用户权限管理)
./usr/local/mongodb/bin/mongo #进入mongodb数据库控制台
show dbs#将显示默认数据admin和local
db.shutdownServer() #关闭mongodb服务
exit#退出控制台
2.参数解释
启动服务时用到的如下:
--dbpath 数据库路径
--logpath 日志文件路径
--logappend 日志在日志文件末尾追加
--port 启用的端口号【可不写,默认是27017】
--fork 让mongodb服务在后台运行
3.创建配置文件及脚本文件
为了更方便的配置及启动数据库,我们可以创建配置文件及脚本文件
touch /usr/local/mongodb/mongodb.conf #创建配置文件
vi /usr/local/mongodb/mongodb.conf #编辑
>
#端口
port=27017
#数据文件存放目录
dbpath= /data/mongodb/data
#日志文件路径
logpath=/data/mongodb/log/mongodb.log
#使用追加的方式写日志
logappend=true
#以守护程序的方式启用,即在后台运行
fork=true
#最大同时连接数 默认2000
maxConns=5000
#允许所有IP访问,如果要限制访问,可指定以逗号分隔的ip地址
bind_ip=0.0.0.0
#是否启用身份认证
auth=false
nohttpinterface=true
rest=false
Esc + :wq! #保存并退出
touch start.sh #创建启动脚本文件
vi start.sh #编辑
>
#!/bin/sh
bin/mongod -f mongodb.conf
Esc + :wq! #保存并退出
chmod u+x start.sh #赋予权限
./start.sh #执行脚本启动服务
4.非root用户安装mongodb【出于安全考虑】
日常操作中为了避免一些误操作,更加安全的管理系统,通过使用的用户身份都为普通用户,而非root。当需要执行一些管理员命令操作时,再切换成root用户身份去执行。
linux切换用户知识补充:
A.su - (su为switch user,即切换用户的缩写),格式:su -l username(-l为login,即登录的缩写),-l可以将l省略掉,所以此命令常写为su - username。
如果不指定username(用户名),默认即为root,所以切换到root身份的命令即为:su - root 或是直接su -。
通过命令exit或者logout或者ctrl+d返回原用户身份。
B.通过su切换用户还可以直接使用命令su username,与su - username的不同之处如下:
su - username切换用户后,同时切换到新用户的工作环境中。
su username切换用户后,不改变原用户的工作目录及其他环境变量目录。
创建mongo用户:
useradd mongo
passwd mongo
一.从root切换到mongo身份,执行:su - mongo,然后执行以上mongodb的安装流程即可。
二.现在root用户下执行以上mongodb的安装流程,然后给mongodb的安装目录和数据库目录指定mongo用户,再切换到mongo用户,执行数据库连接即可。
chown -R mongo:mongo /usr/local/mongodb
chown -R mongo:mongo /data/mongodb/
如果mongodb服务启动失败,则我们可以查看/data/mongodb/log/mongodb.log日志信息,以找到错误原因来解决问题。
5.远程连接mongodb失败
远程连接失败可能有两个原因:
A.mongodb的配置文件中的bind_ip默认为127.0.0.1,默认只有本机可以连接。解决方案:将bind_ip配置为0.0.0.0,表示接受任何ip的连接;如果要限制访问,可以指定以逗号分隔的多个ip地址。
B.防火墙阻止了27017端口。解决方案:
vi /etc/sysconfig/iptables // 将27017端口加入防火墙
service iptables restart // 重启防火墙
或者:
Linux关闭防火墙命令
1) 永久性生效,重启后不会复原
开启:chkconfig iptables on
关闭:chkconfig iptables off
2) 即时生效,重启后复原
开启:service iptables start
关闭:service iptables stop
6.设置开机启动mongodb
A.添加mongodb系统服务:vim etc/rc.d/init.d/mongod
B.输入以下内容:
ulimit -SHn 655350
#!/bin/sh
# chkconfig: - 64 36
# description:mongod
case $1 in
start)
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf
;;
stop)
/usr/local/mongodb/bin/mongo 127.0.0.1:27017/admin --eval "db.auth('root','123456');db.shutdownServer()"
;;
#db.auth('root','123456');当数据库进行了用户认证时,才需要加这一句,root和123456为用户名和密码
status)
/usr/local/mongodb/bin/mongo 127.0.0.1:27017/admin --eval "db.stats()"
;;
esac
C.保存完之后,添加脚本执行权限:chmod +x /etc/rc.d/init.d/mongod
D.启动mongodb服务:service mongod start
E.关闭mongodb服务:service mongod stop
F.将此服务设置为开机启动:chkconfig mongod on,然后重新启动机器进行测试。
G.验证mongodb是否启动:lsof -i :27017,检测端口是否在使用中。
7.将mongodb添加到环境变量
vi etc/profile #编辑环境变量文件
export PATH=$PATH:/usr/local/mongodb/bin
Esc + :wq! #保存并退出
source /etc/profile #使配置立即生效
mongo#现在在任何目录下执行mongo都可以进入控制台
最新文章
- ThinkPhp 3.2 自动验证
- python基本图像操作与处理
- hashicorp/consul
- struts2学习记录
- discuz MVC结构分析
- centos安装altas
- 第12周&;第13周
- jpa知识点
- [python学习笔记]Day2
- UNDERSTANDING POSTGRESQL.CONF: CHECKPOINT_SEGMENTS, CHECKPOINT_TIMEOUT, CHECKPOINT_WARNING
- 使用js对中文进行gbk编码
- Altium Designer导出部分元件过滤不焊接的元件【worldsing笔记】
- Java基础知识强化之多线程笔记02:多线程之 面试题(常问)
- java_method_MD5加密
- 关于用xercesImpl包解析xml文件遇中文报错问题
- 自定义view组件
- JQuery之Attr()与Prop()方法
- C#反射の反射详解
- Bootstrap3基础 img-rounded 图片的四个角改成圆角
- Ruby on Rails中的Rake教程(Rake如何把我灌醉!)
热门文章
- (转 )C++ static、const和static const 以及它们的初始化
- ruby on rails 数据库操作
- java.sql.SQLException: Streaming result set com.mysql.jdbc.RowDataDynamic@27ce24aa is still active. No statements may be issued when any streaming result sets are open and in use on a given connection
- Tomcat内部结构及请求原理(转)
- fetch body里数据为ReadableStream 解决办法
- “使用驱动器中J:的光盘之前需要将其格式化
- union遇上ntext数据类型
- KVM网络性能调优
- CSS Text(文本)
- 生产者消费者JAVA实现