1、Flexus云服务器说明

Flexus云服务器的带宽很小,如果有大文件下载/大流量传输的,需要购买其他云服务如负载均衡。

2、我云服务器实例的操作系统

我选的以Ubuntu 22.04.5 LTS为基础WordPress工具集成的操作系统实例

3、打开ssh远程登录安全规则

找到配置安全组-配置规则-更改安全组弹窗-新增安全组列表页面。

修改“已绑定的安全组”的规则

把tcp:22端口对所有IP开放

4、重置root账号的登录密码

没服务器密码,没法远程登录。

5、为什么不用CloudShell或者其他应用工具SSH登录

5.1 CloudShell需要先登录华为云的网站,然后才能使用CloudShell登录,然后web版本的shell页面,有点卡顿。

5.2 其他应用工具要去下载免费或者破解的软件包,换个电脑又要重新下载,然后启动都有快捷方式

5.3 我用windows的ssh登录,很是方便

6、windows的ssh怎么使用

打开或者运行cmd/powershell,输入

ssh root@113.45.182.68 -p 22

然后会提示你输入账号的密码

可以操作云服务器了。

7、更新系统软件包

分别执行两个命令

sudo apt update

第一个命令,20分钟左右执行完。

sudo apt upgrade -y

中途我执行第二个命令时,离开了20分钟,然后ssh断开了,没有办法继续执行命令

我重新登录再执行就出现这个报错

Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 3348 (apt)

因为对话框我没有选择,所以中断了。

找到apt进程对应的id,结束掉

ps aux | grep apt

这个例子中的id是3348

sudo kill -9 3348

再重新执行,总共需要30分钟左右完成,而且中途会有对话框,让你选择并按回车,我都是选择默认选项。

sudo apt upgrade -y

8、导入 MongoDB 公钥

导入 MongoDB 官方签名的 GPG 公钥:

curl -fsSL https://pgp.mongodb.com/server-6.0.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-server-6.0.gpg

9、添加 MongoDB 的 APT 仓库

/etc/apt/sources.list.d/mongodb-org-6.0.list 中添加仓库源:

echo "deb [signed-by=/usr/share/keyrings/mongodb-server-6.0.gpg] https://repo.mongodb.org/apt/ubuntu $(lsb_release -cs)/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list

10、更新软件包列表并安装 MongoDB

sudo apt update

两条命令

sudo apt install -y mongodb-org

11、启动和配置 MongoDB

我刚开始还能用systemctl去控制

启动
sudo systemctl start mongod

设置开机自启

sudo systemctl enable mongod

查看运行状态
sudo systemctl status mongod

停止
sudo systemctl stop mongod

重启
sudo systemctl restart mongod

没有权限验证的时候,可以直接用mongosh命令链接数据库

  使用mongosh链接的官网文档地址:

连接到部署 - MongoDB Shell

mongosh

12、给数据库增加账号密码

要先成功链接数据库,然后才能执行mongosh内部命令

运行mongosh内部命令的官网文档地址:

运行命令 - MongoDB Shell

use admin
db.createUser({
  user: "admin",
  pwd: "password",
  roles: [{ role: "userAdminAnyDatabase", db: "admin" }]
})

13、开放远程登录

sudo nano /etc/mongod.conf

mongod.conf官网配置说明的地址

自管理配置文件选项 - MongoDB 手册 v8.0

找到bindIp,改为0.0.0.0

不一定要用nano,vi或者其他编辑器也可以。

修改后保存并退出

14、开启权限验证

sudo nano /etc/mongod.conf

还是修改mongod.conf配置

添加

security:
  authorization: enabled

不要用tab制表符,用空格缩进。

修改后保存并退出

15、停止mongod的服务

如果停止服务无效,可以找到mongod的进程id,然后强制结束掉

ps aux | grep mongod

sudo kill -9 5719

16、使用mongo命令启动mongodb服务

mongo命令官网文档地址:

mongod - MongoDB 手册 v8.0

mongod --config /etc/mongod.conf --fork

我用到了--config和--fork

17、使用mongosh登录数据库

使用mongosh链接的官网文档地址:

连接到部署 - MongoDB Shell

mongosh "mongodb://127.0.0.1:27017" --username <!username> --authenticationDatabase <!role> --password <!password>

出现这个就是成功了

然后输入mongosh内部命令

必须要链接成功,如果链接不成功,就没有任何意义。

如果没有用账号密码登录,就使用mongosh内部命令,就会有下面的错误。

mongosh内部命令官网地址:

方法 - MongoDB Shell

18、剩余问题

我现在还不知道,为什么用

sudo systemctl restart mongod启用的mongodb服务有问题,链接不上。

开启权限验证后,必须要用mongod 命令启动服务。

Logo

欢迎加入华为云数据库社区,在这里可以找到志同道合的朋友,共同探索数据库的奥秘

更多推荐