検索

MongoDB文档数据库提供了主从复制模式,其实MongoDB的主从复制配置很简单,就是启动MongoDB服务进程的时候 分别指定 --master ,

MongoDB文档数据库提供了主从复制模式,其实MongoDB的主从复制配置很简单,就是启动MongoDB服务进程的时候 分别指定 --master ,--slave,一个是以主模式启动,另一个属于从模式启动,当主库更新时,数据就会被被复制到从数据库中。
此次测试仅在单台服务器上开启2deamon来模拟2台服务器进行主从复制:
主库:./mongod --master --dbpath=/opt/monogdata/data --port=60000
从库:./mongod --slave --dbpath=/opt/monogdata/slavedata/ --port=60010 --source=127.0.0.1:60000

--主库:
[monogdb@yangDB bin]$ ./mongo --port 60000
MongoDB shell version: 1.8.3-rc0
connecting to: 127.0.0.1:60000/test
> show dbs
admin   (empty)
local   1.203125GB
test    0.203125GB
> use test
switched to db test
> show collections --查看主库中的对象。
system.indexes  --system.indexes用来存放索引的表
test--一个测试表
--查看test表中的内容
>db.test.find(); --此操作=select * from test;
{ "_id" : ObjectId("4e3fe5d8e138232e61000000"), "id" : 1, "val" : "hello monogdb" }
--向test表中插入数据
> db.test.insert({id:2,val:"yangql is learing monogdb master slave!"});
> db.test.find();                                                     
{ "_id" : ObjectId("4e3fe5d8e138232e61000000"), "id" : 1, "val" : "hello monogdb" }
{ "_id" : ObjectId("4e45291c018d1a0d765a9788"), "id" : 2, "val" : "yangql is learing monogdb master slave!" }
                 
--备库
[monogdb@yangDB bin]$ ./mongo --port=60010
MongoDB shell version: 1.8.3-rc0
connecting to: 127.0.0.1:60010/test
> db
test
> db.printSlaveReplicationInfo(); ---显示主库的信息。
source:   127.0.0.1:60000
         syncedTo: Fri Aug 12 2011 21:19:42 GMT+0800 (CST)
                 = 7secs ago (0hrs)
> show collections
system.indexes
test  --主库的数据已经被复制到从库了
> db.test.find();
{ "_id" : ObjectId("4e3fe5d8e138232e61000000"), "id" : 1, "val" : "hello monogdb" }
--主库更新数据后查看从库。
> db.test.find();
{ "_id" : ObjectId("4e3fe5d8e138232e61000000"), "id" : 1, "val" : "hello monogdb" }
{ "_id" : ObjectId("4e45291c018d1a0d765a9788"), "id" : 2, "val" : "yangql is learing monogdb master slave!" }
--测试在从库更新数据,但是不成功!
> db.test.insert({id:2,val:"yangql is writing things to  slave,but it can`t do this!"});                                   
not master
> db.test.find(); 
{ "_id" : ObjectId("4e3fe5d8e138232e61000000"), "id" : 1, "val" : "hello monogdb" }
{ "_id" : ObjectId("4e45291c018d1a0d765a9788"), "id" : 2, "val" : "yangql is learing monogdb master slave!" }
monogdb的主从复制是不能达到主库当机以后,从库自动升级到主库的,,而Replica Pairs借用arbiter可以完成主从故障迁移 。

linux

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
データ処理と計算にMySQL関数を使用する方法データ処理と計算にMySQL関数を使用する方法Apr 29, 2025 pm 04:21 PM

MySQL関数は、データ処理と計算に使用できます。 1.基本的な使用には、文字列処理、日付計算、数学操作が含まれます。 2。高度な使用法には、複数の関数を組み合わせて複雑な操作を実装することが含まれます。 3.パフォーマンスの最適化では、Where句での機能の使用を回避し、GroupByおよび一時テーブルを使用する必要があります。

MySQLにデータを挿入する効率的な方法MySQLにデータを挿入する効率的な方法Apr 29, 2025 pm 04:18 PM

MySQLでデータを挿入するための効率的な方法には、次のものが含まれます。1。insertInto ...値構文、2。LoadDatainFileコマンドの使用、3。トランザクション処理の使用、4。バッチサイズの調整、5。Insurtignoreまたは挿入の使用...

フィールドをMySQLテーブルに追加および削除する手順フィールドをMySQLテーブルに追加および削除する手順Apr 29, 2025 pm 04:15 PM

MySQLでは、AlterTabletable_nameaddcolumnnew_columnvarchar(255)afterexisting_columnを使用してフィールドを追加し、andtabletable_namedopcolumncolumn_to_dropを使用してフィールドを削除します。フィールドを追加するときは、クエリのパフォーマンスとデータ構造を最適化する場所を指定する必要があります。フィールドを削除する前に、操作が不可逆的であることを確認する必要があります。オンラインDDL、バックアップデータ、テスト環境、および低負荷期間を使用したテーブル構造の変更は、パフォーマンスの最適化とベストプラクティスです。

MySQLクエリの実行計画を分析する方法MySQLクエリの実行計画を分析する方法Apr 29, 2025 pm 04:12 PM

説明コマンドを使用して、MySQLクエリの実行計画を分析します。 1.説明コマンドは、パフォーマンスのボトルネックを見つけるのに役立つクエリの実行計画を表示します。 2。実行計画には、ID、select_type、table、type、baining_keys、key、key_len、ref、行、およびextraなどのフィールドが含まれます。 3。実行計画によると、インデックスを追加し、完全なテーブルスキャンを避け、参加操作の最適化、オーバーレイインデックスの使用により、クエリを最適化できます。

MySQLサブクエリを使用してクエリ効率を向上させる方法MySQLサブクエリを使用してクエリ効率を向上させる方法Apr 29, 2025 pm 04:09 PM

サブクエリは、MySQLクエリの効率を向上させることができます。 1)Subqueryは、データのフィルタリングや集約値の計算など、複雑なクエリロジックを簡素化します。 2)MySQL Optimizerは、サブクエリを操作に参加させてパフォーマンスを向上させることができます。 3)INの代わりに存在することは、複数の行の戻りエラーを回避できます。 4)最適化戦略には、関連するサブ征服の回避、存在の使用、インデックスの最適化、およびサブクエリネスティングの回避が含まれます。

mysqlの文字セットと照合ルールを構成する方法mysqlの文字セットと照合ルールを構成する方法Apr 29, 2025 pm 04:06 PM

MySQLで文字セットと照合を構成する方法は次のとおりです。1。サーバーレベルでの文字セットとコレクションの設定:setNames'utf8 '; setCharacterSetutf8; setCollat​​ion_connection = 'utf8_general_ci'; 2。特定の文字セットと照合を使用するデータベースを作成します:createdatabaseexample_dbcharactersetutf8collat​​eutf8_general_ci; 3.テーブルを作成するときに文字セットとコレクションを指定:createTableExample_table(idint

MySQLをアンインストールし、残留ファイルをクリーンする方法MySQLをアンインストールし、残留ファイルをクリーンする方法Apr 29, 2025 pm 04:03 PM

安全かつ徹底的にMySQLをアンインストールし、すべての残留ファイルをクリーンにするには、次の手順に従ってください。1。MySQLサービスを停止します。 2。MySQLパッケージをアンインストールします。 3.構成ファイルとデータディレクトリのクリーン。 4.アンインストールが徹底していることを確認します。

MySQLのデータベースの名前を変更する方法MySQLのデータベースの名前を変更する方法Apr 29, 2025 pm 04:00 PM

MySQLでデータベースを変更するには、間接的な方法が必要です。手順は次のとおりです。1。新しいデータベースを作成します。 2。mysqldumpを使用して、古いデータベースをエクスポートします。 3.データを新しいデータベースにインポートします。 4.古いデータベースを削除します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール