现实情况下,mysql比较常见的是一主多从,而在主库出现问题是,需要将其从库升为主库,但事实上这种操作非常繁琐,基本上要对所有的从库进行操作。 既然如此,不妨将mysql做成ABC的结构,A为主库,B为A的从库,C是B的从库 这种情况,在A出现问题是,可以直接
现实情况下,mysql比较常见的是一主多从,而在主库出现问题是,需要将其从库升为主库,但事实上这种操作非常繁琐,基本上要对所有的从库进行操作。
既然如此,不妨将mysql做成ABC的结构,A为主库,B为A的从库,C是B的从库
这种情况,在A出现问题是,可以直接将B升为主库,其余下级从库将不需要任何操作。
这里记录一次此类操作,我这里的情况是,已经存在A和B,A是主,B是从
需求是,添加一个A的从库C,再添加一个C的从库D。
快速添加mysql从库(前提是都已经安装了相同版本的mysql)
首先将从库B的主从stop掉
mysql> stop slave; Query OK, 0 rows affected (0.06 sec) mysql> show slave status\G; *************************** 1. row *************************** Slave_IO_State: Master_Host: 10.10.1.171 Master_User: mysqlab Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin.000096 Read_Master_Log_Pos: 585421644 Relay_Log_File: mysql-relay-bin.000279 Relay_Log_Pos: 2043143 Relay_Master_Log_File: mysql-bin.000096 Slave_IO_Running: No Slave_SQL_Running: No
然后将从库B的数据文件打包,分别拷贝到新的从库C和C的从库D下(sock和pid文件不要打包)
sync tar -czf mysqldata3326.tar.gz mysqldata3326/ scp mysqldata3326.tar.gz 10.10.1.173:/home/ scp mysqldata3326.tar.gz 10.10.1.174:/home/
解压分别放在C和D的数据目录(删除主从信息文件)
cd /home tar zxf mysqldata3326.tar.gz mv /home/mysqldata3326/datadir/master.info /home/mysqldata3326/datadir/master.info.bak
修改C和D的配置文件的server-id,C为11 , D为21,(我这里有端口的区别,这个根据现实情况)
vim /home/mysqldata3326/my.cnf
分别启动C和D
/usr/local/mysql/bin/mysqld_safe --defaults-file=/home/mysqldata3326/my.cnf --user=mysql &
配置C和D的主从(一定要先配置好C和D的主从)
C:查看C的master信息
mysql> show master status; +------------------+----------+--------------+---------------------------------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+---------------------------------------------+ | mysql-bin.000092 | 1953402 | | mysql,test,information_schema,sphinx_search | +------------------+----------+--------------+---------------------------------------------+
D:配置D的主从信息
mysql> slave stop; mysql> reset slave; mysql> change master to master_host='10.10.1.173',master_user='mysqlab',master_password='xxxxx',master_log_file='mysql-bin.000092',master_log_pos=1953402; mysql> slave start; mysql> show slave status\G; *************************** 1. row *************************** Slave_IO_State: Master_Host: 10.10.1.173 Master_User: mysqlab Master_Port: 3326 Connect_Retry: 60 Master_Log_File: mysql-bin.000092 Read_Master_Log_Pos: 1953490 Relay_Log_File: mysql-relay-bin.000279 Relay_Log_Pos: 214513 Relay_Master_Log_File: mysql-bin.000092 Slave_IO_Running: Yes Slave_SQL_Running: Yes
修改C的主库同步信息(这里的主从信息要和stop B从库的信息一致)
mysql> slave stop; mysql> reset slave; mysql> change master to master_host='10.10.1.171',master_user='mysqlab',master_password='xxxxxx',master_log_file='mysql-bin.000096',master_log_pos=585421644; mysql> slave start;
最后启动B的主从!完成
验证:
通过show slave status\G;查看主从信息,SQL和IO线程是否为yes
最简单的验证就是在A里随便创建个库,然后show一下D里是否同步了。

MySQLは、初心者がデータベーススキルを学ぶのに適しています。 1.MySQLサーバーとクライアントツールをインストールします。 2。selectなどの基本的なSQLクエリを理解します。 3。マスターデータ操作:テーブルを作成し、データを挿入、更新、削除します。 4.高度なスキルを学ぶ:サブクエリとウィンドウの関数。 5。デバッグと最適化:構文を確認し、インデックスを使用し、選択*を避け、制限を使用します。

MySQLは、テーブル構造とSQLクエリを介して構造化されたデータを効率的に管理し、外部キーを介してテーブル間関係を実装します。 1.テーブルを作成するときにデータ形式と入力を定義します。 2。外部キーを使用して、テーブル間の関係を確立します。 3。インデックス作成とクエリの最適化により、パフォーマンスを改善します。 4.データベースを定期的にバックアップおよび監視して、データのセキュリティとパフォーマンスの最適化を確保します。

MySQLは、Web開発で広く使用されているオープンソースリレーショナルデータベース管理システムです。その重要な機能には、次のものが含まれます。1。さまざまなシナリオに適したInnodbやMyisamなどの複数のストレージエンジンをサポートします。 2。ロードバランスとデータバックアップを容易にするために、マスタースレーブレプリケーション機能を提供します。 3.クエリの最適化とインデックスの使用により、クエリ効率を改善します。

SQLは、MySQLデータベースと対話して、データの追加、削除、変更、検査、データベース設計を実現するために使用されます。 1)SQLは、ステートメントの選択、挿入、更新、削除を介してデータ操作を実行します。 2)データベースの設計と管理に作成、変更、ドロップステートメントを使用します。 3)複雑なクエリとデータ分析は、ビジネス上の意思決定効率を改善するためにSQLを通じて実装されます。

MySQLの基本操作には、データベース、テーブルの作成、およびSQLを使用してデータのCRUD操作を実行することが含まれます。 1.データベースの作成:createdatabasemy_first_db; 2。テーブルの作成:createTableBooks(idintauto_incrementprimarykey、titlevarchary(100)notnull、authorvarchar(100)notnull、published_yearint); 3.データの挿入:InsertIntoBooks(タイトル、著者、公開_year)VA

WebアプリケーションにおけるMySQLの主な役割は、データを保存および管理することです。 1.MYSQLは、ユーザー情報、製品カタログ、トランザクションレコード、その他のデータを効率的に処理します。 2。SQLクエリを介して、開発者はデータベースから情報を抽出して動的なコンテンツを生成できます。 3.MYSQLは、クライアントサーバーモデルに基づいて機能し、許容可能なクエリ速度を確保します。

MySQLデータベースを構築する手順には次のものがあります。1。データベースとテーブルの作成、2。データの挿入、および3。クエリを実行します。まず、createdAtabaseおよびcreateTableステートメントを使用してデータベースとテーブルを作成し、InsertINTOステートメントを使用してデータを挿入し、最後にSelectステートメントを使用してデータを照会します。

MySQLは、使いやすく強力であるため、初心者に適しています。 1.MYSQLはリレーショナルデータベースであり、CRUD操作にSQLを使用します。 2。インストールは簡単で、ルートユーザーのパスワードを構成する必要があります。 3.挿入、更新、削除、および選択してデータ操作を実行します。 4. Orderby、Where and Joinは複雑なクエリに使用できます。 5.デバッグでは、構文をチェックし、説明を使用してクエリを分析する必要があります。 6.最適化の提案には、インデックスの使用、適切なデータ型の選択、優れたプログラミング習慣が含まれます。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

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

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

Dreamweaver Mac版
ビジュアル Web 開発ツール
