标签:mongdb err mongodb local data usr 使用 安装 MONGDB
MONGDB安装与使用 安装 1 下载mongodb安装包 网址:https://www.mongodb.com/try/download/community 官网上可以下载多个系统的mongdb安装包,windows,centos,ubuntu等等,如图 MONGDB安装与使用_java 2 安装MONGDB软件 解压mongdb 压缩包 tar xvf mongodb-linux-x86_64-rhel80-4.4.4.tgz 将解压生成的目录 改名为mongodb ,并移动到 /usr/local下 mv mongodb-linux-x86_64-rhel80-4.4.4.tgz mongodb mv mongodb /usr/local/ 进入mongodb目录下 创建data目录 data目录下创建db目录 data目录下创建log目录 1mkdir data 2cd data 3mkdir db 4mkdir log 回到mongo目录下,创建mongodb的配置文件,mongodb.conf,之后启动需要用到 需要在mongodb.conf下配置 dbpath -- 数据库的数据存放位置 logpath -- 日志文件存放位置 logappend -- 日志是否以追加的方式 port -- 端口号 auth -- 是否需要认证 fork -- 是否以守护进程的方式运行 bind -- 限制远程访问的ip,不做限制的话可以写0.0.0.0 dbpath=/usr/local/mongodb/data/db logpath=/usr/local/mongodb/data/log/mongodb.log logappend=true port=27017 auth=true fork=true bind_ip=0.0.0.0 将mongodb可执行程序写入到/etc/profile 中,开机时会自动读取这个文件 1export MONGODB_HOME=/usr/local/mongodb 2export PATH=$PATH:$MONGODB_HOME/bin 启动mongodb服务 mongod -f /usr/local/mongodb/mongodb.conf 关于防火墙 1、可以直接关闭系统的防火墙 2、防火墙打开端口27017端口,以便于客户端进行连接mongdb 3 关于MONGDB的状态查看 查询mongodb状态 ps aux |grep mongodb 查看端口 netstat -antp |grep 27017 关闭mongodb 通过kill 命令杀掉 PID即可 mongod -f /usr/local/mongodb/mongodb.conf --shutdown mongdb设置角色、用户名、密码 /usr/local/mongodb/mongodb.conf 的配置如下,我们可以把auth置为false ,auth字段开启,是开启认证,关闭则是关闭认证 MONGDB安装与使用_java_02 mongdb有多个角色 角色 用户 read、readWrite 管理员 dbAdmin、dbOwner、userAdmin 集群管理员 clusterAdmin、clusterManager、clusterMonitor、hostManager 备份恢复权限 backup、restore 所有数据库权限 readAnyDatabas ereadWriteAnyDatabase userAdminAnyDatabase dbAdminAnyDatabase 超级用户 root 内部角色 __system 4.1 选择数据库 1use xxx 4.2 创建管理员账号 1db.createUser({user:'admin2',pwd:'123456',roles:[{role:'readWriteAnyDatabase',db:'admin'}]}) 执行后,如下效果 1Successfully added user: { 2 "user" : "admin2", 3 "roles" : [ 4 { 5 "role" : "readWriteAnyDatabase", 6 "db" : "admin" 7 } 8 ] 9} 接下来具体的mongdb数据库操作,可以看菜鸟教程学习一波,很快就会用了 https://www.runoob.com/mongodb/mongodb-create-collection.html MONGDB安装与使用_java_03 5 mongodb设置开机启动 添加一个mongdb的服务 1vim /etc/rc.d/init.d/mongod 编写这个服务的具体实现 1start() { 2 /usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf 3} 4 5stop() { 6 /usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf --shutdown 7} 8case "$1" in 9 start) 10 start 11 ;; 12 13 stop) 14 stop 15 ;; 16 17 restart) 18 stop 19 start 20 ;; 21 *) 22 echo $"details: $0 {start|stop|restart}" 23 exit 1 24esac 对这个服务的可执行程序添加执行权限 chmod +x /etc/rc.d/init.d/mongod 启动这个服务 service mongod start 关闭这个服务 service mongod stop 重启这个服务 service mongod restart 6 可视化工具 介绍一个可视化工具,非常好用,比nosql这个工具好用多了 Robo 3T 1.3.1 下载链接如下 https://robomongo.org/download 软件操作比较简单,大家下载下来后,熟悉一下界面,就会使用了。 MONGDB安装与使用_java_04 GOLANG简单操作mongdb mongdb的驱动大家使用比较多的有2种: mongdb 官方的库, go.mongodb.org/mongo-driver/mongo 第三方库 gopkg.in/mgo.v2 地址为:http://labix.org/mgo 我们选用官方的驱动库来介绍mongdb简单的增,删,改,查 1type Test struct { 2 Name string `bson:"name"` 3 Age int `bson:"age"` 4 CreateTime int64 `bson:"createTime"` 5 UpdateTime int64 `bson:"updateTime"` 6} 7 8 9func initMongdb() error { 10 // 1 建立mongodb连接 11 // 填写自己的mongdb地址,端口默认是 27017 12 clientOptions := options.Client().ApplyURI("mongodb://admin:123456@xxxx:27017/admin?authMechanism=SCRAM-SHA-1") 13 mclient, err := mongo.Connect(context.TODO(), clientOptions) 14 if err != nil { 15 mlog.Error(err) 16 return err 17 } 18 // 2, 选择数据库my_db 19 database := mclient.Database("admin") 20 // 3, 选择表my_collection 21 collection := mgMongoDatabase.Collection("deviceToken") 22 23 mlog.Info("connect mongdb successfully") 24 25 26 // 插入数据 27 record := &Test{ 28 Name: "小魔童", 29 CreateTime: time.Now().Unix(), 30 UpdateTime: time.Now().Unix(), 31 } 32 result, err := collection.InsertOne(context.TODO(), record) 33 if err != nil { 34 mlog.Error(err) 35 return err 36 } 37 mlog.Info(result) 38 39 // 更新数据 40 // if err := UpdateData(bson.M{"name": "xxxx"}, bson.D{{"$set", bson.M{"age": 15}}}); err != nil { 41 // mlog.Error(err) 42 // return 43 // } 44 45 46 //查询单个记录 47 //data := &DeviceToken{} 48 //err = collection.FindOne(context.TODO(),bson.M{}).Decode(data) 49 //mlog.Info(data) 50 51 //查询所有记录 52 data := []DeviceToken{} 53 cursor, err := collection.Find(context.TODO(), bson.M{}) 54 cursor.All(context.TODO(), &data) 55 mlog.Info(data) 56 57 58 // 删除一条记录 59 //res ,err := mgMongoCollection.DeleteOne(context.TODO(),bson.M{"name":"xxxx"}) 60 //if err != nil{ 61 // mlog.Warn(err) 62 //} 63 64 return nil 65} 学习mongdb 可以看看这个网站,当前这个完整还不支持 golang操作mongdb标签:mongdb,err,mongodb,local,data,usr,使用,安装,MONGDB 来源: https://www.cnblogs.com/06080410z/p/16516199.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。