在线教育网站开发文档,给我播放个免费的片,衡州网站建设seo,下载微信公众号文章目录 一、 环境准备二、安装包下载三、 软件安装和启动3.1 将下载好的安装包上传到 Linux 服务器某个目录下#xff0c;并使用以下命令解压压缩包。3.2 将解压后的目录移动到 /usr/local 目录下#xff0c;并改名为 mongodb 。3.3 进入 mongo 目录#xff0c;并创建文件… 文章目录 一、 环境准备二、安装包下载三、 软件安装和启动3.1 将下载好的安装包上传到 Linux 服务器某个目录下并使用以下命令解压压缩包。3.2 将解压后的目录移动到 /usr/local 目录下并改名为 mongodb 。3.3 进入 mongo 目录并创建文件夹 data在 data 文件夹下再创建 db 文件夹用于存放数据库数据和 log文件夹存放 mongo 日志。然后为其设置可读写权限。3.4 在 mongodb-7.0 目录下新建配置文件 mongodb.conf可选但建议配置打开文件输入以下内容。3.5 配置环境变量使用 sudo vim /etc/profile 命令打开系统文件3.6 完成以上步骤即可启动 Mongo 服务。启动报错 3.7 验证 四、 其他配置1 开放端口2 检查服务状态3.在浏览器中输入网址http://localhost:27017/ 。如果服务启动成功会看到以下一段话4 开机自启动5 启动重启停止服务 五、用户角色和密码1 内置角色2 创建管理员账号3 验证4 演示对单个数据库创建用户和密码5 可视化工具连接注意当连接的数据库启动没有设置用户认证时不用填写用户名和密码。因为studio3T是要破解的目前我查到的破解都是延长他的试用期而已所以我用的也是这个办法 一、 环境准备
MongoDB 系列文章
Linux CentOS7 环境下安装 MongoDBWindows 环境下安装 MongoDB
二、安装包下载
官网下载地址https://www.mongodb.com/try/download/community
创建目录
mkdir /usr/local/soft/mongo
cd /usr/local/soft/mongo复制下载地址然后直接在 Linux 服务器上使用 wget 下载。
## 实验centos7.9 系统安装mongodb7.x版本不成功非法指定应该是缺少指令集
sudo wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-7.0.11.tgz
## 换成 mongodb4.x 版本
sudo wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.4.29.tgzsudo wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.4.29.tgz三、 软件安装和启动
3.1 将下载好的安装包上传到 Linux 服务器某个目录下并使用以下命令解压压缩包。
tar -zxvf mongodb-linux-x86_64-rhel70-4.4.29.tgz3.2 将解压后的目录移动到 /usr/local 目录下并改名为 mongodb 。
mv tar -zxvf mongodb-linux-x86_64-rhel70-4.4.29 mongodb-4.0
sudo chown ltkj:ltkj -R /usr/local/soft/mongo3.3 进入 mongo 目录并创建文件夹 data在 data 文件夹下再创建 db 文件夹用于存放数据库数据和 log文件夹存放 mongo 日志。然后为其设置可读写权限。
# 进入目录
cd /usr/local/soft/mongo/# 创建三个文件夹
sudo mkdir -p /data/db/mongo/
sudo mkdir -p /data/db/mongo/data
sudo mkdir -p /data/db/mongo/log# 设置可读写权限
sudo chmod 755 -R /data/db/mongo/
# sudo chmod 666 -R /data/db/mongo/
sudo chown ltkj:ltkj -R /data/db/mongo/3.4 在 mongodb-7.0 目录下新建配置文件 mongodb.conf可选但建议配置打开文件输入以下内容。
cd /usr/local/soft/mongo/mongodb-7.0
mkdir conf
cd conf
vim mongodb.conf# 数据库数据存放目录
dbpath/data/db/mongo/data
# 日志文件存放目录
logpath/data/db/mongo/log/mongodb.log
# 使用追加的方式写日志
logappendtrue
# 端口
port27017
# 是否认证
authtrue
# 以守护进程方式在后台运行
forktrue
#每次写入会记录一条操作日志通过journal可以重新构造出写入的数据。
#即使宕机启动时wiredtiger会先将数据恢复到最近一次的checkpoint点然后重放后续的journal日志来恢复。
journaltrue
storageEnginewiredTiger #存储引擎有mmapv1、wiretiger、mongorocks# 远程连接要指定ip否则无法连接0.0.0.0代表不限制ip访问
bind_ip0.0.0.03.5 配置环境变量使用 sudo vim /etc/profile 命令打开系统文件
按下字母 I 键开始编辑 在 export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL 一行的上面添加如下内容:
export MONGODB_HOME/usr/local/soft/mongo/mongodb-4.0
export PATH$PATH:$MONGODB_HOME/bin保存最后使用 source /etc/profile 命令重启系统配置。
3.6 完成以上步骤即可启动 Mongo 服务。
# -f 等同于--config
[rootlocalhost mongodb-4.0]# ./bin/mongod -f /usr/local/soft/mongo/mongodb-4.0/conf/mongodb.conf
about to fork child process, waiting until server is ready for connections.
forked process: 12649
ERROR: child process failed, exited with 1
To see additional information in this output, start without the --fork option.
[rootlocalhost mongodb-4.0]# 启动报错
mongodb出现启动失败 child process failed, exited with 1 To see additional information in this output
解决方式 造成这个报错的原因是 “MongoDB” 服务没有正常的关闭非法关闭的时候有一个 lock 文件 没有干掉所以在第二次启动的时候检查到有 lock 文件的存在就报这个错误了。 解决这个问题的方法其实也很简单
检查创建的mongod.conf文件中两个path指向路径跟创建路径名是否一致。查看服务有没有正常的关闭存在xxx.lock 文件 没有干掉进入db文件夹中找到进行删除 。 进入到数据存储路径将该 “xxx.lock 文件” mongod.lock删除掉就好。
/data/db/mongo/ 是你的mongodb路径
rm -rf /data/db/mongo/mongod.lock 然后重启执行命令
3.7 验证
使用安装目录下 bin 目录的 mongo 客户端命令连接和访问 MongoDB默认会链接到 test 数据库。
[rootlocalhost mongodb-4.0]# ./bin/mongo
MongoDB shell version v4.4.29
connecting to: mongodb://127.0.0.1:27017/?compressorsdisabledgssapiServiceNamemongodb
Implicit session: session { id : UUID(b514f571-0852-4794-a8f1-034b5ac652e0) }
MongoDB server version: 4.4.29
Welcome to the MongoDB shell.
For interactive help, type help.
For more comprehensive documentation, seehttps://docs.mongodb.com/
Questions? Try the MongoDB Developer Community Forumshttps://community.mongodb.comdb
test四、 其他配置
1 开放端口
CentOS 7 版本对防火墙进行了加强不再使用原来的 iptables而是启用 firewall 。默认情况下不开放任何端口。所以如果需要对外开发 MongoDB 服务那么需要开放 MongoDB 的端口 。
# 开放27017端口
[rootchenpi mongodb]# firewall-cmd --zonepublic --add-port27017/tcp --permanent
success
# 让配置生效
[rootchenpi mongodb]# firewall-cmd --reload
success
# 查看开放的端口验证是否成功
[rootchenpi mongodb]# firewall-cmd --zonepublic --list-ports
6380/tcp 27017/tcp
[rootchenpi mongodb]# 2 检查服务状态
# 查看 mongodb 进程状态
[rootchenpi mongodb]# ps aux | grep mongo
root 1566 1.6 6.4 1099452 64240 ? Sl 15:39 0:11 mongod -f /usr/local/mongodb/mongodb.conf
root 1693 0.0 0.0 112812 972 pts/0 R 15:49 0:00 grep --colorauto mongo# 检查端口是否启动
[rootchenpi mongodb]# netstat -lanp | grep 27017
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 1566/mongod
tcp 0 0 172.22.17.128:27017 172.22.16.99:7424 ESTABLISHED 1566/mongod
tcp 0 0 172.22.17.128:27017 172.22.16.99:7425 ESTABLISHED 1566/mongod
unix 2 [ ACC ] STREAM LISTENING 22369 1566/mongod /tmp/mongodb-27017.sock
[rootchenpi mongodb]# 如果 netstat 命令没有找到先进行安装。
yum install -y net-tools3.在浏览器中输入网址http://localhost:27017/ 。如果服务启动成功会看到以下一段话
It looks like you are trying to access MongoDB over HTTP on the native driver port.
4 开机自启动
使用 vim /usr/lib/systemd/system/mongodb.service 命令新建开机启动配置文件输入以下内容保存。
[Unit]DescriptionmongodbAfternetwork.target remote-fs.target nss-lookup.target
[Service]TypeforkingExecStart/usr/local/soft/mongo/mongodb-4.0/bin/mongod -f /usr/local/soft/mongo/mongodb-4.0/conf/mongodb.confExecReload/bin/kill -s HUP $MAINPIDExecStop/usr/local/soft/mongo/mongodb-4.0/bin/mongod -f /usr/local/soft/mongo/mongodb-4.0/conf/mongodb.conf --shutdownPrivateTmptrue
[Install]WantedBymulti-user.target然后依次执行以下4个命令使之生效。
# 启动 mongodb
[rootchenpi mongodb]# systemctl start mongodb.service# 查看服务状态
[rootlocalhost mongodb-4.0]# systemctl start mongodb.service
[rootlocalhost mongodb-4.0]# systemctl status mongodb.service
● mongodb.service - mongodbLoaded: loaded (/usr/lib/systemd/system/mongodb.service; disabled; vendor preset: disabled)Active: active (running) since 二 2024-06-25 15:26:19 CST; 3s agoProcess: 15838 ExecStart/usr/local/soft/mongo/mongodb-4.0/bin/mongod -f /usr/local/soft/mongo/mongodb-4.0/conf/mongodb.conf (codeexited, status0/SUCCESS)Main PID: 15841 (mongod)CGroup: /system.slice/mongodb.service└─15841 /usr/local/soft/mongo/mongodb-4.0/bin/mongod -f /usr/local/soft/mongo/mongodb-4.0/conf/mongodb.conf6月 25 15:26:18 localhost.localdomain systemd[1]: Starting mongodb...
6月 25 15:26:18 localhost.localdomain mongod[15838]: about to fork child process, waiting until server is ready for connections.
6月 25 15:26:18 localhost.localdomain mongod[15838]: forked process: 15841
6月 25 15:26:19 localhost.localdomain mongod[15838]: child process started successfully, parent exiting
6月 25 15:26:19 localhost.localdomain systemd[1]: Started mongodb.
[rootlocalhost mongodb-4.0]# # 开机自启动
[rootlocalhost mongodb-4.0]# systemctl enable mongodb.service
Created symlink from /etc/systemd/system/multi-user.target.wants/mongodb.service to /usr/lib/systemd/system/mongodb.service.# 修改 mongodb.service文件时重新加载文件
[rootlocalhost mongodb-4.0]# systemctl daemon-reload
[rootlocalhost mongodb-4.0]#
5 启动重启停止服务
systemctl start mongodb.service
systemctl restart mongodb.service
systemctl stop mongodb.service五、用户角色和密码
启动 MongoDB 服务默认是没有账号密码的即连接上即可进行各种操作。
但是我们在启动配置文件中指定了 authtrue即开启了认证所以链接后需要认证才能执行操作。默认情况下MongoDB 是没有管理员账户的所以我们需要在 admin 数据库中使用 db.createUser() 命令添加管理员帐号或其他角色。 ————————————————
1 内置角色
数据库用户角色read、readWrite数据库管理角色dbAdmin、dbOwner、userAdmin集群管理角色clusterAdmin、clusterManager、clusterMonitor、hostManager备份恢复角色backup、restore所有数据库角色readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase超级用户角色root内部角色__system
2 创建管理员账号
切换到 admin 数据库使用以下命令创建管理账号拥有操作所有数据库权限。 use admin
switched to db admindb.createUser({user:admin,pwd:123456,roles:[{role:userAdminAnyDatabase,db:admin},{role:readWrite,db:admin}]})
Successfully added user: {user : admin,roles : [{role : userAdminAnyDatabase,db : admin}]
}3 验证
使用 mongo 命令连接上之后如果不进行 db.auth(“用户名”,“密码”) 进行用户验证的话是执行不了任务命令的只有通过认证才可以。注意每一个用户都需要在创建这个用户的认证库下进行认证。 use admin
switched to db admindb.auth(admin,123456)
1show tables
system.users
system.version————————————————4 演示对单个数据库创建用户和密码
平常开发中一般新项目会创建新的数据库而且创建一个新的数据库用户仅对此数据库进行读写。以下演示创建 chenpi 用户密码为123456并设置对 nobody 数据库读写的权限。注意创建新用户前先使用 admin 用户登录因为我们刚才为 admin 用户设置了 userAdminAnyDatabase 权限。# 先使用有创建用户权限的用户登录use admin
switched to db admindb.auth(admin,123456)
1
# 新用户的认证库use nobody
switched to db nobody
# 创建chenpi用户密码123465对nobody数据库有读写权限db.createUser({user:chenpi,pwd:123456,roles:[{role:readWrite,db:nobody}]})
Successfully added user: {user : chenpi,roles : [{role : readWrite,db : nobody}]
}5 可视化工具连接
推荐使用可视化工具Studio 3T For MongoDB使用不同用户名和密码进行登录的时候其可操作的数据库范围是不同的角色设置原因。
注意当连接的数据库启动没有设置用户认证时不用填写用户名和密码。
直接解压缩安装即可
因为studio3T是要破解的目前我查到的破解都是延长他的试用期而已所以我用的也是这个办法
操作步骤 一、 自己在桌面上创建批处理文件 并且命名为 studio3t.bat 在里面输入
echo off
ECHO 重置Studio 3T的使用日期......
FOR /f tokens1,2,* %%i IN (reg query HKEY_CURRENT_USER\Software\JavaSoft\Prefs\3t\mongochef\enterprise ^| find /V installation ^| find /V HKEY) DO ECHO yes | reg add HKEY_CURRENT_USER\Software\JavaSoft\Prefs\3t\mongochef\enterprise /v %%i /t REG_SZ /d
ECHO 重置完成, 按任意键退出......
pausenul
exit注意保存的时候要注意保存为utf-8
二、然后将该文件 studio3t.bat 剪贴到这个路径
测试连接图片