mysql 主从同步设置
前提,两台安装了同样版本mysql的服务器(其实好像版本不一样也行,但是稳妥起见,还是用一样版本的mysql吧,毕竟俺是个小白)。 主服务器ip:192.168.2.19从服务器ip:192.168.2.155 停止前端nginx服务,既停止php向mysql发起请求 一.给主服务器上创建一个
前提,两台安装了同样版本mysql的服务器(其实好像版本不一样也行,但是稳妥起见,还是用一样版本的mysql吧,毕竟俺是个小白)。
主服务器ip:192.168.2.19 从服务器ip:192.168.2.155
停止前端nginx服务,既停止php向mysql发起请求
一.给主服务器上创建一个用户用于给从服务器同步使用:
grant all privileges on *.* to slaveuser@丛库IP identified by '密码';
二.停止这两台服务器上的mysql服务:
/usr/local/mysql/bin/mysqladmin shutdown --socket=/opt/db/mysql/mysql.sock -uroot -ppassword
三.修改主服务器的配置文件
server-id = 1 #主机标示,整数
log_bin = /opt/db/mysql/data/mysql-bin.log #确保此文件可写
read-only = 0 #主机,读写都可以
binlog-do-db = test #需要备份数据,多个写多行
binlog-do-db = anotherdb #需要备份数据,多个写多行
四.在从服务器上拉取主服务器中的要同步的库的表结构和数据(需要输入主服务器的root密码)
scp -r -p root@192.168.2.19:/opt/db/mysql/data/fb_cn /opt/db/mysql/data/
并且改变/opt/db/mysql/data/中fb_cn的用户和用户组
五.启动主服务器mysql服务(根据自己具体情况启动)
/usr/local/mysql/bin/mysqld_safe
--defaults-file=/opt/db/mysql/my.cnf #mysql配置文件位置
--basedir=/usr/local/mysql #mysql安装目录
--pid-file=/opt/db/mysql/mysql.pid #pid文件创建位置
--datadir=/opt/db/mysql/data #数据文件位置
--socket=/opt/db/mysql/mysql.sock #sock文件位置
--log-error=/opt/db/mysql/err.log #错误日志文件位置
--log-slow-queries=/opt/db/mysql/slowquery.log& #慢查询日志文件位置
六.查看主服务器mysql状态,记录file和position,很重要,在从库设置中将被用到,此时需保证主服务器mysql不会有写操作
/usr/local/mysql/bin/mysql -uroot --socket=/opt/db/mysql/mysql.sock -p (进入mysql环境)
>show master status;
+——————+———-+————–+——————+
|File|Position|Binlog_Do_DB|Binlog_Ignore_DB|
+——————+———-+————–+——————+
|mysql-bin.000001|106| myslave | mysql
|+——————+———-+————–+——————+
七.修改从服务器的配置文件
server-id = 2 #主机标示,整数
log_bin = /opt/db/mysql/data/mysql-bin.log #binlog
master-host = 192.168.2.19 #主服务器ip地址
master-user = slaveuser #主服务器用于主从设置的用户
master-pass = 密码 #主服务器用于主从设置的用户密码
master-port = 3306 #主服务器端口号
master-connect-retry = 60 #从服务器发现主服务器断掉,重新连接时间(秒)
replicate-do-db = test #要进行主从同步的库名,用逗号隔开
replicate-do-db = another #要进行主从同步的库名,用逗号隔开
八.启动从服务器(根据自己具体情况启动)
/usr/local/mysql/bin/mysqld_safe
--defaults-file=/opt/db/mysql/my.cnf #mysql配置文件位置
--basedir=/usr/local/mysql #mysql安装目录
--pid-file=/opt/db/mysql/mysql.pid #pid文件创建位置
--datadir=/opt/db/mysql/data #数据文件位置
--socket=/opt/db/mysql/mysql.sock #sock文件位置
--log-error=/opt/db/mysql/err.log #错误日志文件位置
--log-slow-queries=/opt/db/mysql/slowquery.log& #慢查询日志文件位置
九.进入从服务器mysql环境中,配置Slave信息
/usr/local/mysql/bin/mysql -uroot --socket=/opt/db/mysql/mysql.sock -p
>CHANGE MASTER TO
>MASTER_HOST='192.168.2.19', #主服务器ip
>MASTER_PORT=3306, #主服务器mysql服务端口
>MASTER_USER='slaveuser', #主服务器中用于主从连接的用户名
>MASTER_PASSWORD='密码', #主服务器中用于主从连接的用户密码
>MASTER_LOG_FILE='mysql-bin.000001', #从主服务器的master状态中读取的file
>MASTER_LOG_POS=106; #从主服务器的master状态中读取的position
十.启动Slave服务
>start slave;
十一.查看从服务器状态
>show slave status\G;
如果发现
Waitingfor master to send event
Slave_IO_Running:Yes
Slave_SQL_Running:Yes
总体来说,这个配置还是很成功的,但是由于操作问题,在配置过程中,大脑缺弦了,直接把replicate-do-db = another这个考到了从服务器的mysql配置文件里,典型脑残啊,特此纪念一把,多花了一个小时的时间。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

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

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

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

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

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

ホットトピック









次の手順でphpmyadminを開くことができます。1。ウェブサイトコントロールパネルにログインします。 2。phpmyadminアイコンを見つけてクリックします。 3。MySQL資格情報を入力します。 4.「ログイン」をクリックします。

MySQLはオープンソースのリレーショナルデータベース管理システムであり、主にデータを迅速かつ確実に保存および取得するために使用されます。その実用的な原則には、クライアントリクエスト、クエリ解像度、クエリの実行、返品結果が含まれます。使用法の例には、テーブルの作成、データの挿入とクエリ、および参加操作などの高度な機能が含まれます。一般的なエラーには、SQL構文、データ型、およびアクセス許可、および最適化の提案には、インデックスの使用、最適化されたクエリ、およびテーブルの分割が含まれます。

Redisは、単一のスレッドアーキテクチャを使用して、高性能、シンプルさ、一貫性を提供します。 I/Oマルチプレックス、イベントループ、ノンブロッキングI/O、共有メモリを使用して同時性を向上させますが、並行性の制限、単一の障害、および書き込み集約型のワークロードには適していません。

データベースとプログラミングにおけるMySQLの位置は非常に重要です。これは、さまざまなアプリケーションシナリオで広く使用されているオープンソースのリレーショナルデータベース管理システムです。 1)MySQLは、効率的なデータストレージ、組織、および検索機能を提供し、Web、モバイル、およびエンタープライズレベルのシステムをサポートします。 2)クライアントサーバーアーキテクチャを使用し、複数のストレージエンジンとインデックスの最適化をサポートします。 3)基本的な使用には、テーブルの作成とデータの挿入が含まれ、高度な使用法にはマルチテーブル結合と複雑なクエリが含まれます。 4)SQL構文エラーやパフォーマンスの問題などのよくある質問は、説明コマンドとスロークエリログを介してデバッグできます。 5)パフォーマンス最適化方法には、インデックスの合理的な使用、最適化されたクエリ、およびキャッシュの使用が含まれます。ベストプラクティスには、トランザクションと準備された星の使用が含まれます

MySQLは、そのパフォーマンス、信頼性、使いやすさ、コミュニティサポートに選択されています。 1.MYSQLは、複数のデータ型と高度なクエリ操作をサポートし、効率的なデータストレージおよび検索機能を提供します。 2.クライアントサーバーアーキテクチャと複数のストレージエンジンを採用して、トランザクションとクエリの最適化をサポートします。 3.使いやすく、さまざまなオペレーティングシステムとプログラミング言語をサポートしています。 4.強力なコミュニティサポートを提供し、豊富なリソースとソリューションを提供します。

Apacheはデータベースに接続するには、次の手順が必要です。データベースドライバーをインストールします。 web.xmlファイルを構成して、接続プールを作成します。 JDBCデータソースを作成し、接続設定を指定します。 JDBC APIを使用して、接続の取得、ステートメントの作成、バインディングパラメーター、クエリまたは更新の実行、結果の処理など、Javaコードのデータベースにアクセスします。

DockerでMySQLを起動するプロセスは、次の手順で構成されています。MySQLイメージをプルしてコンテナを作成および起動し、ルートユーザーパスワードを設定し、ポート検証接続をマップしてデータベースを作成し、ユーザーはすべての権限をデータベースに付与します。

PHPMyAdminは単なるデータベース管理ツールではなく、MySQLを深く理解し、プログラミングスキルを向上させることができます。コア関数には、CRUDおよびSQLクエリの実行が含まれ、SQLステートメントの原則を理解することが重要です。高度なヒントには、データのエクスポート/インポートと許可管理が含まれ、深いセキュリティの理解が必要です。潜在的な問題にはSQLインジェクションが含まれ、ソリューションはパラメーター化されたクエリとバックアップです。パフォーマンスの最適化には、SQLステートメントの最適化とインデックスの使用が含まれます。ベストプラクティスは、コード仕様、セキュリティプラクティス、および定期的なバックアップを強調しています。
