mysql数据库的主从同步过程详述(一)

在看过老男孩老师博客http://oldboy.blog.51cto.com/2561410/839399里写的关于mysql的主从复制后,我将自己做的试验过程记录如下,包括脚本,故障解决,图文并茂叙述

   在看过老男孩老师博客里写的关于mysql的主从复制后,我将 自己做的试验过程记录如下,包括脚本,故障解决,图文并茂叙述过程,因篇幅过长,可能有所删减,请看到此文的朋友见谅.   因借鉴老男孩老师的视频,虽然不是他的学生,也在此默默的感谢他的视频,他视频里的环境是在一机多实例的环境当中,并且mysql可能做了相关优化,我的环境则是两台机器上,有任何不对的地方欢迎大家指出.

1复制准备

port为3306

port为3306

数据库环境准备,具备两台服务器每个机器一个数据库的环境.

2.主库上执行操作

[mysqld]

server-id = 1

log-bin = mysql-bi

提示:

restart。

 

/etc/init.d/mysql  restart

mysql  -uroot  -p’123123′  -S  /tmp/mysql.sock

mysql>select   user();    查看用户

表);

用户访问;

#identified  by  “123456” , 123456为密码,香港空间,实际环境时复杂一点为好。

再次检查创建的rep账号

select  user.host  from  mysql.user;

也可以查看用户权限   mysql>show  grants  for  rep@’192.168.1.%’;

mysql数据库的主从同步过程详述(一)

2.3对数据库锁表只读(当前窗口不要关闭)

生产环境时,香港服务器,操作主从复制,需要申请停机时间,锁表会影响业务。

mysql>flush  tables  with  read  lock;

提示,这个锁表命令的时间,在不同引擎的情况,会受下面参数的控制,锁表时,如果超过设置时间不操作会自动解锁;

库宝AI 库宝AI

库宝AI是一款功能多样的智能伙伴助手,涵盖AI写作辅助、智能设计、图像生成、智能对话等多个方面。

库宝AI 109 查看详情 库宝AI

interactive_timeout = 60

wait_timeout = 60

默认情况下的时长为:

mysql>show  variables  like  “%timeout%”;  可以查看到默认值很大

mysql数据库的主从同步过程详述(一)

2.4查看主库状态

查看主库状态,即当前日志文件名和二进制日志偏移量

show  master  status;命令显示的信息要记录在案,后面的从库复制时是从这个位置开始的。

mysql数据库的主从同步过程详述(一)

2.5导出数据库数据

mkdir  /server/backup/  -p

mysqldump  -uroot  -p”123123″  -S  /tmp/mysql.sock  -A  -B  | gzip  > /server/backup/mysql_bak.$(date  +%F).sql.gz

等参数(导库时会直接覆盖所有的)。

ls  -l  /server/backup/mysql_bak.$(date  +%F).sql.gz

为了确保导库期间,数据库没有数据插入,可以再检查下主库状态信息

mysql  -uroot  -p”123123″  -S  /tmp/mysql.sock  -e  “show  master  status”

提示,无特殊情况,binlog文件及位置点是保持不变的。

mysql数据库的主从同步过程详述(一)

导库后,解锁主库,恢复可写;

mysql>unlock  tables;

特别提示,有读者这里犯迷糊,实际上做从库的,无论主库更新多少数据了,最后从库都会从上面show  master  status  的位置很快赶上主库的位置进度的。

ls  -l  /server/backup/mysql_bak.$(date  +%F).sql.gz

请继续关注mysql数据库的主从同步过程详述(二)

本文出自 “王海鹏” 博客,转载请与作者联系!

,网站空间

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/529067.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月9日 09:34:44
下一篇 2025年11月9日 09:40:33

相关推荐

  • PHP后端开发环境怎么搭建_PHP后端开发环境搭建详细步骤指南。

    首先安装XAMPP等集成环境并启动Apache和MySQL服务,接着配置php.ini文件启用必要扩展,然后在htdocs目录创建index.php文件输入测试环境,确认PHP信息页面正常显示后,通过访问localhost/phpmyadmin管理数据库,最后安装VS Code等编辑器并配置PHP插…

    2025年12月12日
    000
  • php数据库如何上传文件存储 php数据库文件管理系统的搭建

    首先将文件保存在服务器目录中,数据库仅存储文件路径、名称等信息。通过HTML表单上传文件,PHP接收后移动至指定目录,并将文件元数据插入数据库。数据库设计包含id、filename、filepath、filesize、filetype和upload_time字段。安全方面需禁止上传目录执行PHP、验…

    2025年12月12日
    000
  • 解决AWS Elastic Beanstalk应用无法连接外部数据库的问题

    本文旨在帮助开发者解决在使用AWS Elastic Beanstalk部署PHP应用时,遇到的无法连接外部数据库的问题。通过分析问题代码和解决方案,提供了一种将外部数据库迁移至Elastic Beanstalk环境内的数据库,并修改连接配置以成功连接数据库的方法。 在使用AWS Elastic Be…

    2025年12月12日
    000
  • 如何在Docker Compose中部署多容器PHP应用的详细步骤?

    首先创建项目目录结构,包括app、nginx、mysql等子目录,并编写docker-compose.yml文件定义web、php、db和redis四个服务。接着在php目录下编写Dockerfile,基于php:8.2-fpm安装必要扩展并复制代码至容器。然后配置nginx.conf,设置serv…

    2025年12月12日
    000
  • 为什么PHP代码中的服务器配置错误频发_PHP服务器配置错误问题排查与预防教程

    首先检查php.ini文件是否正确加载,确认路径并启用必要扩展;接着调整内存、执行时间等资源限制;再验证Web服务器与PHP集成方式及文件权限设置,确保服务正常运行。 如果您在运行PHP应用程序时遇到功能异常或服务中断,很可能是由于服务器配置存在错误。这类问题通常表现为页面无法加载、数据库连接失败或…

    2025年12月12日
    000
  • php数据库备份还原操作_php数据库数据安全的保障措施

    掌握PHP网站数据库备份与还原方法可有效防止数据丢失。首先通过PHP脚本连接MySQL,获取表结构与数据并生成SQL文件,存于Web目录外确保安全;其次使用phpMyAdmin图形化界面导出SQL文件并导入恢复,操作简便;最后可通过PHP执行mysqldump命令实现高效备份,结合system()函…

    2025年12月12日
    000
  • php网站怎么用_PHP网站搭建、部署与日常维护方法

    首先配置LAMP环境,依次安装Apache、MySQL、PHP及扩展并重启服务;接着上传网站文件至/var/www/html并设置正确权限;然后配置Apache虚拟主机并启用站点;再创建数据库与用户,授权并填写PHP连接配置;最后定期备份文件与数据库,检查日志并关闭错误显示以提升安全性。 如果您正在…

    2025年12月12日
    000
  • PHP邮件怎么批量发送_PHP批量邮件发送方法及列表管理。

    使用PHPMailer结合数据库与队列机制实现高效批量邮件发送。首先通过Composer安装PHPMailer,定义HTML邮件模板,并从数据库或CSV文件读取收件人列表,循环发送并设置发送间隔避免被限流。同时,利用MySQL存储邮件列表,包含用户信息与订阅状态,提供订阅表单并实现邮箱验证机制,确保…

    2025年12月12日
    000
  • php配置如何设置默认字符集_php配置多语言支持的要点

    首先设置PHP默认字符集为UTF-8并重启服务器,接着启用intl扩展支持多语言处理,配置HTTP响应头声明charset=UTF-8,使用gettext实现翻译管理,最后统一数据库连接字符集为utf8mb4以确保数据一致性。 如果您在开发多语言网站时遇到字符显示乱码或语言切换失败的问题,可能是由于…

    2025年12月12日
    000
  • 如何设置PHP的数据库持久连接_连接池优化配置处理方法

    答案:通过启用PDO持久连接、调整MySQL最大连接数、使用ProxySQL连接池、合理配置PHP-FPM进程数及监控失效连接,可优化PHP数据库性能。具体包括设置PDO::ATTR_PERSISTENT=true;配置max_connections=500;部署ProxySQL并修改连接指向其端口…

    2025年12月12日
    000
  • 将SQL查询结果中的字符串金额转换为浮点数以适配图表数据格式的教程

    本教程详细阐述了如何在php中使用pdo从sql数据库中获取数据时,将查询结果中的字符串类型金额字段准确转换为浮点数,并构建成符合google charts等图表库要求的二维数组格式。通过在pdo的`fetch`循环中进行数据类型显式转换和结构化,可以直接生成可用于数据可视化的最终数据结构,避免了额…

    2025年12月12日
    000
  • 自动化重排MariaDB排序字段并更新值

    本文详细介绍了如何在mariadb中自动化重排并更新排序字段(`sortorder`)的值,以保持数据现有逻辑顺序的同时,重新均匀化排序值。通过sql查询利用会话变量生成新的序列号,并结合更新语句高效地完成这一任务。此外,文章还探讨了在应用层处理更复杂或用户驱动的排序更新场景,提供了事务性操作的建议…

    2025年12月12日
    000
  • 优化 jQuery 表单提交:避免重复 AJAX 请求的策略

    本文深入探讨了在 jquery 应用中,由于事件处理程序重复绑定导致的表单重复提交和 ajax 请求问题。通过分析将 `submit` 事件处理程序错误地嵌套在 `click` 事件处理程序内部的常见误区,文章提供了清晰的解决方案:将表单提交逻辑独立绑定,确保其仅在 dom 加载时执行一次。此方法有…

    2025年12月12日
    000
  • PHP中基于ID精确更新数据库数组数据的实践指南

    本教程探讨了在php中如何高效且精确地更新数据库中存储为数组的数据。针对传统方法可能导致批量更新而非单条记录更新的问题,我们提出并演示了通过在更新逻辑中引入每条记录的唯一id,从而实现对数据库中特定行的精准修改。文章提供了详细的代码示例和最佳实践建议,以确保数据更新的准确性和安全性。 在开发基于PH…

    2025年12月12日
    000
  • PHP中将多个相关数组批量插入数据库的策略

    本文详细介绍了如何在php中处理表单提交的多个相关数组数据,并将其作为独立的记录批量插入数据库。核心方法是利用 `foreach` 循环的键(key)来同步访问不同数组中对应位置的元素,从而构建每条记录。文章通过示例代码演示了安全地使用pdo预处理语句进行数据插入,并提供了数据验证、类型转换及错误处…

    2025年12月12日
    000
  • 优化jQuery事件处理:解决表单重复提交问题的实践指南

    本文深入探讨了jquery中因事件处理程序嵌套绑定不当导致表单重复提交和多重ajax请求的问题。通过分析错误示例,我们揭示了重复绑定事件处理程序的机制,并提供了一种将表单提交事件处理程序从按钮点击事件中解耦的解决方案。此方法确保了事件处理程序只被绑定一次,从而有效避免了不必要的ajax请求,提升了前…

    2025年12月12日
    000
  • Laravel应用中的日期与时区管理:UTC存储与用户友好展示策略

    本文深入探讨laravel应用中日期和时区处理的最佳实践。我们强烈建议将应用日期存储为utc时区,以简化全球化应用的数据管理。文章将详细阐述何时以及如何进行时区转换,特别是在向用户展示数据时转换为用户本地时区,以及接收用户输入时转换回utc。通过使用carbon宏,可以优雅地实现自动化时区转换,确保…

    2025年12月12日
    000
  • PHP中精确更新数据库中数组表示的记录:基于唯一ID的策略

    本教程详细阐述了在php中如何通过利用数据库记录的唯一id,实现对数组形式数据(如订单关联地址)的精确更新。针对传统方法可能导致批量更新而非单条更新的问题,本文提供了一种改进方案,通过传递包含记录id的数据结构,结合预处理语句,确保每次更新操作只针对目标记录,从而提升数据操作的准确性和灵活性。 在开…

    2025年12月12日
    000
  • 优化MariaDB排序字段:自动重置与间隔更新策略

    本教程详细介绍了如何在mariadb中自动重置并更新数据表的排序字段(sortorder)值。通过利用sql语句中的子查询和用户定义变量,我们能够根据现有行的相对顺序,重新生成等间隔的排序值,从而解决手动维护排序值可能导致的混乱。文章还探讨了在应用程序层面处理用户批量更新的策略,确保数据一致性和操作…

    2025年12月12日
    000
  • PHP实现数据库数据自动填充HTML表单教程

    本教程详细讲解如何使用%ignore_a_1%从mysql数据库中查询特定学生信息,并将其自动填充到html表单的相应字段中。文章涵盖数据库连接、sql查询执行、结果集处理以及数据与表单的集成,并针对常见的`mysqli_fetch_assoc()`错误提供了解决方案和最佳实践。 在Web开发中,经…

    2025年12月12日 好文分享
    000

发表回复

登录后才能评论
关注微信