mysql linux下高可用架构的简析及主、从复制的实战(一)
mysql数据库的主、从复制是比较简单的,但是也是mysql数据库高可用性的一个基础,我的理解是所有mysql的高可用都是从这主、从简单复制演变而来。写这篇博客是因
mysql数据库的主、从复制是比较简单的,但是也是mysql数据库高可用性的一个基础,我的理解是所有mysql的高可用都是从这主、从简单复制演变而来。写这篇博客是因为最近有位同事和我说他做mysql ha实验,使用的是keepalived+mysql主、从架构,使我疑惑了,与他一起再次复习mysql ha的高可用架构,知道这样的架构并不理想。
我的理解是主、从复制存在时间差的,数据库一致性得不到保证,即使是使用shell 进行监控从数据库的复制性那也是需要时间的,一个简单的例子当master down时从还没复制完全或没有复制,在实际的生产环境中就存在大问题了。而主、主复制的架构,就很好的解决了数据库一致性问题,是可以使用keepalived来实现。
主、从复制的架构毕竟还是为了数据库的备份,虽然是热备的一种但是不能让他去做高冗余吧,其实这种架构我还是很欣赏的,还有一个好处可以读、写分离来提高数据库的I/O性能,我虽然建立的电子商务平台不多,但基本上上线的还是这个架构为主。这种架构在master出现故障后,还是要靠手工去切换,不存在裂脑问题,同时毕竟牵扯到数据库,稳妥点比较好,电子商务中数据库的事都是大事。
另一种架构我是非常欣赏并使用过主、主的自动切换架构,即解决了单点故障问题,还可以自动切换(一定要设置切换时报警,还是要上线看的),同时还互为备份。在参看了煮酒抚琴兄的一篇mysql数据库优化(下)后,给我的启发是如果数据库的投入充裕的话,还可以主主、从的架构,虽然没有直接应用过,但从理论上应该是中底端mysql数据库应用最稳定的吧,有机会的话应用下,这架构下再加上负载均衡应该问题不大。有时间的话,一定要做这个测试来看看效果。
mysql+lvs+cluster+keepalived的负载均衡、HA架构也应用过,但效果不是很理想,并且那个成本实在有点高,后期维护也是个问题,后面会把这个架构我实施的步骤和配置列出来,给感兴趣的朋友一起研究。
我认为无论是那种高可用的mysql架构,至少做到本地和异地双备份。
主、从复制就简单多了,大家都知道主、从复制的原理就是以下三步:
-bin = mysql-bin
binlog-do-db=falvhezi2 (需要同步的库)
binlog-ignore-db=mysql (不需要同步的)
binlog-ignore-db=test (不需要同步的)
成功了。
有两点问题要注意:
Slave_IO_Running: NO
如果此项为NO多为连接性问题
1、 两个服务器系统之间网络连接问题
2、 数据库用户权限问题
Slave_SQL_Running: NO
数据库二进制文件权限不对
本文出自 “踏酒浅酌” 博客,请务必保留此出处

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









NAVICATプレミアムを使用してデータベースを作成します。データベースサーバーに接続し、接続パラメーターを入力します。サーバーを右クリックして、[データベースの作成]を選択します。新しいデータベースの名前と指定された文字セットと照合を入力します。新しいデータベースに接続し、オブジェクトブラウザにテーブルを作成します。テーブルを右クリックして、データを挿入してデータを挿入します。

手順に従って、NAVICATで新しいMySQL接続を作成できます。アプリケーションを開き、新しい接続(CTRL N)を選択します。接続タイプとして「mysql」を選択します。ホスト名/IPアドレス、ポート、ユーザー名、およびパスワードを入力します。 (オプション)Advanced Optionsを構成します。接続を保存して、接続名を入力します。

NAVICATを使用してローカルMYSQLデータベースに接続するには:接続を作成し、接続名、ホスト、ポート、ユーザー名、およびパスワードを設定します。接続をテストして、パラメーターが正しいことを確認します。接続を保存します。接続リストから新しい接続を選択します。接続するデータベースをダブルクリックします。

and:mysql:Alter table_name add column_name data_type; postgresql:column column_name data_typeを変更するcolumn column_name datape; oracle:alter table_name add(column_name data_type);

NAVICATを使用してデータベースに接続するには、次の手順を順番に実行します。NAVICATで接続を作成します。ホスト名、ポート、ユーザー名、パスワード、およびデータベース名を入力します。 Advanced Settings(オプション)を調整します。接続を保存します。接続をテストします。データベースに接続します。データベースオブジェクトを表示します。

NAVICATでテーブルノートを表示する方法:データベースに接続し、ターゲットテーブルに移動します。 [メモ]タブに切り替えます。テーブルノートがあるかどうかを確認してください。

NAVICATでデータベースをインポートする手順には、以下が含まれます。データベースサーバーに接続します。データベース名を右クリックして、[ウィザードのインポート]を選択します。データソースタイプを選択します。データソースの設定を指定します。データファイル形式を選択します。データファイルを参照して選択します。インポートオプション(テーブルマップ、文字セット、データ型)を構成します。インポートの進行状況を実行し、監視します。

NAVICATは、データベースを複製する2つの方法を提供します。レプリカデータベースウィザードを使用します。ターゲットサーバーを選択し、データベース名を入力し、レプリケーションオプションを指定します。マニュアルコピー:データベースをエクスポートし、ターゲットサーバーにエクスポートされたファイルをインポートします。
