이 장에서는 mongodb에서 자신만의 데이터베이스를 빠르게 구축하는 방법을 소개합니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.
mongoddb 설치
로컬로 설치
공식 홈페이지mongodb
클라우드 서버(centos 시스템)에 설치
머신에 해당하는 압축 패키지를 직접 다운로드하세요
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-amazon-3.4.9.tgztar zxvf mongodb-linux-x86_64-3.2.6.tgz mv mongodb-linux-x86_64-3.2.6.tgz mongodb cd mongodb
시스템에 맞게 해당 버전을 다운로드 받으세요~
환경 구성 및 서버 시작
./bin/mongod --dbpath=/usr/local/mongodb/data/db/ --rest
/에 액세스할 수 있습니다. shell일반적인 명령: #查询所有数据库 show dbs;
#删除当前使用数据库 db.dropDatabase();
#克隆主机数据 db.cloneDatabase(“127.0.0.1”);
#修复当前数据库 db.repairDatabase();
#查看当前使用的数据库 db.getName();
#显示当前db状态 db.stats();
#查看当前db的链接机器地址 db.version();
./bin/mongod --fork --dbpath=/usr/local/mongodb/data/db/ --logpath=/usr/local/mongodb/data/log/error.log -logappend --rest
데이터베이스를 더 직관적으로 만드세요
밀집된 데이터가 보기 흉하지 않나요? 기분이 안 좋나요? 이때 데이터베이스를 아름답게 하기 위한 플러그인이 필요합니다. 인터넷에는 mongovue, adminmongo 등이 많이 있습니다. Github에서 검색하거나 확인할 수 있습니다.다음은 데이터베이스 암호화에 관한 내용입니다. 온라인에서 공격을 받은 후 경험을 통해 배우고 암호화 프로세스를 업데이트했습니다.
최고 관리자 추가
먼저 데이터베이스를 실행하고 성공 후 쉘 작업을 실행합니다.> use admin > db.createUser( { user: "your name", pwd: "your pwd", roles: [ { role: "root", db: "admin" } ] } ) Successfully added user: { "user" : "admin", "roles" : [ { "role" : "root", "db" : "admin" } ] }
db.getUsers()
인증 모드 활성화
슈퍼 관리자를 생성한 후 실제로 암호화된 데이터베이스를 시작할 수 있습니다. 그렇지 않으면 자신도 데이터베이스를 운영할 권한이 없습니다.//后台模式需要在shell中关闭之前的普通模式数据库,输入以下命令 > use admin > db.shutdownServer() //终端 启动加密数据库 --auth $ ./bin/mongod --fork --dbpath=/root/mongodb/db/ --logpath=/root/mongodb/log/error.log -logappend --auth //通过命令运行数据库 ,在你的运行命令加上后缀 --auth,这样就启动了加密数据库 ,再次执行数据库操作 > show dbs 2017-09-23T14:09:58.922+0800 E QUERY [thread1] Error: listDatabases failed:{ "ok" : 0, "errmsg" : "not authorized on admin to execute command { listDatabases: 1.0 }", "code" : 13, "codeName" : "Unauthorized" } : _getErrorWithCode@src/mongo/shell/utils.js:25:13 Mongo.prototype.getDBs@src/mongo/shell/mongo.js:62:1 shellHelper.show@src/mongo/shell/utils.js:769:19 shellHelper@src/mongo/shell/utils.js:659:15 @(shellhelp2):1:1 // 发现报错,需要认证信息 > db.auth('your name','your pwd') 成功返回1 失败返回0 输入之前创建的超级账号,OK,简单的加密就完成了。
链接加密数据库
数据库加密后我们的服务端代码也要相应变动。
xxx.db('mongodb://your name: your pwd@localhost:27017/db?authSource=admin');
xxx表示你用的插件 比如 mongoose 、mongoskin之类的。
到此为止,你的数据库就加密完成了,当你的项目变大,你也许还需要创建许多用户,或者升级用户权限,这些官方都有相关的API去操作。
위 내용은 mongodb에서 자신만의 데이터베이스를 빠르게 구축하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!