mongodb 单机配置
官网下载对应版本的mongodb
下载地址 https://www.mongodb.org/downloads#production
mongodb-linux-x86_64-rhel62-3.2.4.gz
a) 执行命令tar –zxvf mongodb-linux-x86_64-rhel62-3.2.4.gz 解压
# cp -r mongodb-linux-x86_64-rhel62-3.2.4 /opt/service/mongodb
4、 MongoDB 的可执行文件位于 bin 目录下,所以可以将其添加到 PATH 路径中
执行命令# vim /etc/profile并添加
export PATH=$PATH:/mnt/service/mongodb/bin
HERE
source /etc/profile
执行如下命令使配置生效
# source /etc/profile
5、 创建数据库目录,目录为/data/mongodb
# cd /data
# mkdir mongodb
6.、启动mongodb,这里指定数据库目录选项为/data/mongodb
# mongod --dbpath /data/mongodb
提示 端口正常启动表示已经启动
7、 配置mongodb,执行如下命令,
# vi /usr/local/mongodb/mongodb.conf
并将下面配置复制进去
port=27017 #端口号
dbpath=/data/mongodb/ #数据库路径
rest=true #设置后打开28017网页端口
logpath=/data/mongodb/mongodb_log/mongodb.log #日志输出文件路径
pidfilepath=/usr/local/mongodb/mongo.pid
fork=true #设置后台运行
logappend=true #日志输出方式
shardsvr=true
#directoryperdb=true
#auth=true #开启认证
8、配置启动脚本
ulimit -SHn 655350
#!/bin/sh
# chkconfig: - 64 36
# description:mongod
case $1 in
start)
/usr/local/mongodb/bin/mongod --maxConns 20000 --config /usr/local/mongodb/mongodb.conf
;;
stop)
/usr/local/mongodb/bin/mongo 127.0.0.1:27017/admin --eval "db.shutdownServer()"
;;
status)
/usr/local/mongodb/bin/mongo 127.0.0.1:27017/admin --eval "db.stats()"
;;
esac
启动脚本
C) 设置开机启动
# chkconfig mongod on
+++++++++
报错
WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
We suggest setting it to 'never'
如果在运行时解决这问题,也不困难,只需要修改hugepage的设置就可以了。执行下面两条命令 临时解决重启失效
echo never >> /sys/kernel/mm/transparent_hugepage/enabled
echo never >> /sys/kernel/mm/transparent_hugepage/defrag
2、 WARNING: soft rlimits too low. rlimits set to 65535 processes, 655350 files. Number
of processes should be at least 327675 : 0.5 times number of file
修改进程
vi /etc/security/limits.d/90-nproc.conf
1024改为327675
#* soft nproc 1024
* soft nproc 327675
ulimit -a 系统限制
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 30473
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 65535
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 65535 执行改为 ulimit -u 327675
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
重启mongodb
首先创建用户管理用户
use admin
db.createUser({user:'useradmin',pwd:'123456', roles:[{role:'userAdminAnyDatabase', db:'admin'}]})
使用用户管理账户登录认证
设置用户为允许连接的用户
use admin
db.auth('useradmin', '123456')
建立其他用户
use admin
db.createUser({user:'admin',pwd:'123456', roles:[{role:'readWriteAnyDatabase', db:'xxx'}]})
db.createUser({user:'superadmin',pwd:'123456', roles:[{role:'root', db:'admin'}]})
user:'root',pwd:'rskj@_2017
新建库表
use DATABASE_NAME
创建的数据库mydb 列表中是不存在的。要显示的数据库,需要把它插入至少一个文件。
db.movie.insert({"name":"tutorials yiibai"})
show dbs
删除库表
db.dropDatabase()
查看mongo库
show dbs;
查看表
show collections
查看记录数
db.search_tmp.count()
MongoDB创建表步骤,Mongo常用的数据库操作命令,查询,添加,更新,删除_MongoDB 性能监测
->use Admin (切换到创建用户)
->db.TestDb (创建数据库)
->db.addUser(“userName”,”Pwd”) 创建用户
->db.auth(“userName”,”Pwd”) 设置用户为允许连接的用户
->db.createCollection(“TableName”) 创建表
->showcollections 查看表是否创建成功
->db.TableName.Save({age:1}) 添加数据
->db.TableName.find() 查看添加的数据是否成功(如果没有查询到任何的结果,说明添加失败)
->添加数据,如果返回的(shell):1 说明有错误