前边介绍了MongoDB的基础,这里推荐两个网站,大家可以查看一下,讲解的还是比较详细的:http://www.w3cschool.cc/mongodb/mongodb-tutorial.html,http://www.yiibai.com/mongodb/mongodb_create_backup.html#。好这篇文章来看一下MongoDB的数据管理,架构
前边介绍了MongoDB的基础,这里推荐两个网站,大家可以查看一下,讲解的还是比较详细的:http://www.w3cschool.cc/mongodb/mongodb-tutorial.html,http://www.yiibai.com/mongodb/mongodb_create_backup.html#。好这篇文章来看一下MongoDB的数据管理,架构搭建。好,先来看张图:
下边按照这张图进行一一介绍。
一,管理篇,当然主要是对数据库的管理,包括我们最关心的数据,和管理这些数据的用户。无论非关系型还是关系型数据库,这一点都是非常重要的。
1,数据的导入导出:对于MongoDB的数据导入导出,用到的还是bin下的命令mongoexport(导出),mongoimport(导入)。
mongoexport:默认导出的JSON格式的文件。进入dos命令窗口,在d:\mongodb\bin的路径下,利用mongoexport命令,可以通过mongoexport -help进行帮助查询。语法:mongoexport -d mydatabase -c mycollection --port 端口 --cvs -f 要导出的列 -0 指定导出的路径名+文件名
mongoimport:和上边的用法基本一样,可以导入JSON格式数据,也可以导出cvs数据格式。mongoimport -h:指明数据库宿主机的IP -u:指明数据库的用户名 -p:指明数据库的密码 -d:指明数据库的名字 -c:指明collection的名字 --type cvs --headerline(指名第一行是列名,无需要导入) --file要导入的文件
导入导出很简单的,熟练使用这两个命令即可。
2,数据的备份和恢复:数据无价,随着当今大数据时代的到来,数据的是越来越加重要,保存好数据,就相当于保存了价值,所以数据库的备份和恢复工作也是非常的重要,这里看一下Mongodb的备份和操作。
备份:也是bin下的命令mongodump,相对来说较简单:
参数说明:
-h:指明数据库宿主机的IP
-u:指明数据库的用户名
-p:指明数据库的密码
-d:指明数据库的名字
-c:指明collection的名字
-o:指明到要导出的文件名
-q:指明导出数据的过滤条件
恢复:bin下的命令mongorestore
参数说明:
-h:指明数据库宿主机的IP
-u:指明数据库的用户名
-p:指明数据库的密码
-d:指明数据库的名字
-c:指明collection的名字
-o:指明到要备份的文件名
-q:指明备份数据的过滤条件
3,用户管理,mongodb里边的用户管理,他有两类用户,一个是超级管理员,一个每个数据库的数据库管理员。默认情况下是没有权限认证的,只有启用了安全性认证后,数据库认证的用户才可以进行读写操作。启动时指定 --auth即添加了权限认证。
1.添加并验证用户,其中这是给本数据test添加用户,第三个参数为readOnly,true或false,表示是否为只读。
> use test
> db.addUser("zjx","tsjianxin")
> db.auth("zjx","tsjianxin")
2.查看已存在的用户
> db.system.users.find()
3.删除用户
> use dbname (admin or 51cv ,etc)
> db.system.users.remove({user:"haha"})
> db.system.users.find()
给admin添加的用户为超级管理员,可以管理其他数据库,但是每个数据库的登录验证必须从自己管理的数据库进行验证,超级管理必须通过admin进行管理,然后切换来管理其他数据库。
二,架构篇,这里简单看一下分布式数据库的搭建,分为主从复制和副本集两个情况,简单来看一下。
1,Master-Slave(主从)复制:MongoDB支持在多个机器中通过异步复制达到故障转移和实现冗余。多机器中同一时刻只有一台是用于写操作,也就是Master(主服务器),但是它可以把读操作分给其他的slave(从服务器)。这也就是主从,这种情况,当主服务器宕掉以后,需要我们手动将一台从服务器改为主服务器,这也是这种形式不好的地方。
首先,需要我们安装两台MongoDB服务器(当然也可以通过一台服务器,在不同的端口上)。然后主服务器启动的命令:mongod --master --dbpa "存放数据库的路径" --logpath "存放日志的路径" --port 端口号 这样我们的主服务器就算完成了。 从服务器启动命令: mongod --slave --source 主服务器的ip:主服务器的mongodb的端口号 --dbpa "存放数据库的路径" --logpath "存放日志的路径" --port 端口号 这样的我们主服务器的从服务器也就启动好了,当然我们可以创建多个从服务器。然后我们可以在主服务器进行增删改操作,看从服务器上的数据会随着主服务器的变化而变化,这样就达到了,mongodb的主从分布。
2,Replica Set(副本集)复制,这种分布集群,主要增加了出现故障自动切换和自动修复成员节点,各个DB之间的数据完全一样。和主从最为显著的区别在于其没有固定的节点,它是整个集群选举出的一个主节点,当其共工作不正常时,其它节点强烈推荐使用。
部署步骤:a,分别为每个mongoDB服务器创建data存储路径和log存储路径
b,分别创建主从key文件用于标识集群的私钥,里边存上相同的私钥,改为只读形式的。
c,每个服务器进行启动:mongod --replSet rs1(副本集名字,相同即可) --keyFile key的路径 --port 端口号 --dbpath 数据库存放路径 --logpath 日志路径
d,配置初始化Replica Sets,也就是将这个集合进行配置:登录任意一台:config_rs1={_id:"rs1",members:[{_id:0,host:"服务器1IP:端口",priority:1(优先级)},{id:1,host:"服务器2IP:端口",priority:2(优先级)}]}
然后初始化配置:rs.initiate(config_rs1); Ok即可
这样就弄好了,优先级数字越大,优先级越高,高的这一台将自动选为主服务器,可以进行增删改查,而其它的则是从服务器可以进行读,注意:rs.slaveOk();
好,最后举一个例子,来理解一下这两种架构。主从复制好比小学班级,副本集复制好比大学班级。每个班级都有一个班长,就是master服务器,其它学生是slave服务器。通过班长可以对班级事宜进行增删改查,而通过学生只能对班级事宜进行了解查询。小学的班长请假了,需要我们老师再来指定一个班长,学生没有意识去推荐,而大学班级,则会由学生自行推荐,无须老师的介入。
好,这篇就先到这,mongoDB的学习还有待大大的深入,通过使用不断理解深刻,不断熟悉,不断升华。

웹 응용 프로그램에서 MySQL의 주요 역할은 데이터를 저장하고 관리하는 것입니다. 1. MySQL은 사용자 정보, 제품 카탈로그, 트랜잭션 레코드 및 기타 데이터를 효율적으로 처리합니다. 2. SQL 쿼리를 통해 개발자는 데이터베이스에서 정보를 추출하여 동적 컨텐츠를 생성 할 수 있습니다. 3.mysql은 클라이언트-서버 모델을 기반으로 작동하여 허용 가능한 쿼리 속도를 보장합니다.

MySQL 데이터베이스를 구축하는 단계에는 다음이 포함됩니다. 1. 데이터베이스 및 테이블 작성, 2. 데이터 삽입 및 3. 쿼리를 수행하십시오. 먼저 CreateAbase 및 CreateTable 문을 사용하여 데이터베이스 및 테이블을 작성한 다음 InsertInto 문을 사용하여 데이터를 삽입 한 다음 최종적으로 SELECT 문을 사용하여 데이터를 쿼리하십시오.

MySQL은 사용하기 쉽고 강력하기 때문에 초보자에게 적합합니다. 1.MySQL은 관계형 데이터베이스이며 CRUD 작업에 SQL을 사용합니다. 2. 설치가 간단하고 루트 사용자 비밀번호를 구성해야합니다. 3. 삽입, 업데이트, 삭제 및 선택하여 데이터 작업을 수행하십시오. 4. Orderby, Where and Join은 복잡한 쿼리에 사용될 수 있습니다. 5. 디버깅은 구문을 확인하고 쿼리를 분석하기 위해 설명을 사용해야합니다. 6. 최적화 제안에는 인덱스 사용, 올바른 데이터 유형 선택 및 우수한 프로그래밍 습관이 포함됩니다.

MySQL은 다음과 같은 초보자에게 적합합니다. 1) 설치 및 구성이 쉽고, 2) 풍부한 학습 리소스, 3) 직관적 인 SQL 구문, 4) 강력한 도구 지원. 그럼에도 불구하고 초보자는 데이터베이스 디자인, 쿼리 최적화, 보안 관리 및 데이터 백업과 같은 과제를 극복해야합니다.

예, sqlisaprogramminglanguages-pecializedfordatamanagement.1) 그것은 초점을 맞추고, 초점을 맞추고, 초점을 맞추고, sqlisessentialforquerying, 삽입, 업데이트 및 adletingdataindataindationaldatabase.3) weburer infriendly, itrequires-quirestoamtoavase

산성 속성에는 원자력, 일관성, 분리 및 내구성이 포함되며 데이터베이스 설계의 초석입니다. 1. 원자력은 거래가 완전히 성공적이거나 완전히 실패하도록합니다. 2. 일관성은 거래 전후에 데이터베이스가 일관성을 유지하도록합니다. 3. 격리는 거래가 서로를 방해하지 않도록합니다. 4. 지속성은 거래 제출 후 데이터가 영구적으로 저장되도록합니다.

MySQL은 데이터베이스 관리 시스템 (DBMS) 일뿐 만 아니라 프로그래밍 언어와 밀접한 관련이 있습니다. 1) DBMS로서 MySQL은 데이터를 저장, 구성 및 검색하는 데 사용되며 인덱스 최적화는 쿼리 성능을 향상시킬 수 있습니다. 2) SQL과 같은 ORM 도구를 사용하여 Python에 내장 된 SQL과 프로그래밍 언어를 결합하면 작업을 단순화 할 수 있습니다. 3) 성능 최적화에는 인덱싱, 쿼리, 캐싱, 라이브러리 및 테이블 부서 및 거래 관리가 포함됩니다.

MySQL은 SQL 명령을 사용하여 데이터를 관리합니다. 1. 기본 명령에는 선택, 삽입, 업데이트 및 삭제가 포함됩니다. 2. 고급 사용에는 조인, 하위 쿼리 및 집계 함수가 포함됩니다. 3. 일반적인 오류에는 구문, 논리 및 성능 문제가 포함됩니다. 4. 최적화 팁에는 인덱스 사용, 선택*을 피하고 한계 사용이 포함됩니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경
