服务器上用宝塔搭建了个环境php
宝塔上安装了MongoDB后没法链接。mysql
查找问题:sql
查看配置文件,默认BindIP 127.0.0.1 端口27017数据库
首先在宝塔安全里面将27017端口放行数组
而后在阿里云安全组将27017端口加入安全组(个人阿里云安全组是限制了外网访问一些端口的)安全
最后将默认BindIP 127.0.0.1 修改成0.0.0.0;并重启MongoDB服务器
使用Navicat测试链接,成功!框架
链接成功后此时能够点击【数据库】进行数据库添加,以下图顺序所示:ide
添加成功后,便可管理集合、视图、函数等了。函数
我这里使用Thinkphp5.1框架,尝试经过代码写入数据
首先在database.php中数组末 追加mongoDB的配置
//MongoDB 配置 'mongo_db' =>[ // 数据库类型 'type' => '\think\mongo\Connection', // 设置查询类 'query' => '\think\mongo\Query', // 服务器地址 'hostname' => '192.168.3.216', // 集合名 'database' => 'for_think_mall', // 用户名 'username' => '', // 密码 'password' => '', // 端口 'hostport' => '27017', 'pk_convert_id' => true, ]复制代码
而后在controller中加入一个方法进行写入
/** * mongo测试 使用方法和mysql基本一致,只是须要加入table对应的集合名 */ public function test() { $data = [ 'name'=>'test', 'value'=>'mongo db' ]; $res = Db::connect('mongo_db')->table('demo')->insert(($data)); $this->success("res",$res); } public function testSelect() { $a = Db::connect('mongo_db')->table('demo') ->where('id','5ff6c6cf6f6f0000f1000d18') ->select(); $this->success("res",$res); }复制代码