当前位置: 首页 > wzjs >正文

地产网站建设旺道seo优化

地产网站建设,旺道seo优化,湖南移动官网网站建设,wordpress抓取微信文章基于Docker去创建MySQL的主从架构 用于开发与测试环境读写分离 主从的架构搭建步骤 基于Docker去创建MySQL的主从架构 # 创建主从数据库文件夹 mkdir -p /usr/local/mysql/master1/conf mkdir -p /usr/local/mysql/master1/data mkdir -p /usr/local/mysql/slave1/conf mkd…

基于Docker去创建MySQL的主从架构

用于开发与测试环境读写分离

主从的架构搭建步骤

基于Docker去创建MySQL的主从架构

# 创建主从数据库文件夹
mkdir -p /usr/local/mysql/master1/conf
mkdir -p /usr/local/mysql/master1/data
mkdir -p /usr/local/mysql/slave1/conf
mkdir -p /usr/local/mysql/slave1/data# 初始化主数据库配置文件
cd /usr/local/mysql/master1/conf
vi my.cnf# 粘贴以下内容
[mysqld]
datadir = /usr/local/mysql/master1/data
character-set-server = utf8
lower-case-table-names = 1# 主从复制-主机配置# 主服务器唯一ID
server-id = 1
# 启用二进制日志
log-bin=mysql-bin
# 设置logbin格式
binlog_format = STATEMENT# 初始化从数据库配置文件
cd /usr/local/mysql/slave1/conf
vi my.cnf# 粘贴以下内容
[mysqld]
datadir = /usr/local/mysql/slave1/data
character-set-server = utf8
lower-case-table-names = 1# 主从复制-从机配置# 从服务器唯一ID
server-id = 2
# 启用中继日志
relay-log = mysql-relay# 文件夹授权
chmod -R 777 /usr/local/mysql

Docker部署Mysql8.0

# 拉取镜像
docker pull mysql:8.0# 查看镜像
docker images# 构建主数据库容器
docker run --name=mysql-master-1 \
--privileged=true \
-p 8808:3306 \
-v /usr/local/mysql/master1/data/:/var/lib/mysql \
-v /usr/local/mysql/master1/conf/my.cnf:/etc/mysql/my.cnf \
-v /usr/local/mysql/master1/mysql-files/:/var/lib/mysql-files/ \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:8.0 --lower_case_table_names=1docker ps# 验证是否可以登录
# 交互式进入容器
docker exec -it mysql-master-1 /bin/bash# 登录(使用构建时指定的密码:root)
mysql -uroot -p# 退出
quit
exit# 构建从数据库容器
docker run --name=mysql-slave-1 \
--privileged=true \
-p 8809:3306 \
-v /usr/local/mysql/slave1/data/:/var/lib/mysql \
-v /usr/local/mysql/slave1/conf/my.cnf:/etc/mysql/my.cnf \
-v /usr/local/mysql/slave1/mysql-files/:/var/lib/mysql-files/ \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:8.0 --lower_case_table_names=1

编写主数据库的复制配置文件


# 交互式进入容器
docker exec -it mysql-master-1 /bin/bash# 登录(使用构建时指定的密码:root)
mysql -uroot -p- 主数据库创建用户slave并授权
# 创建用户,设置主从同步的账户名
create user 'fdy-slave'@'%' identified with mysql_native_password by '123456';# 授权
grant replication slave on *.* to 'fdy-slave'@'%'; # 刷新权限
flush privileges;# 查询server_id值
show variables like 'server_id';# 也可临时(重启后失效)指定server_id的值(主从数据库的server_id不能相同)
set global server_id = 1;# 重置下master的binlog位点
reset master;# 查询Master状态,并记录File和Position的值,这两个值用于和下边的从数据库中的change那条sql中的master_log_file,master_log_pos参数对齐使用
mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000001 |      157 |              |                  |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

编写从数据库的复制配置文件

# 进入从数据库
# 注意:执行完此步骤后退出主数据库,防止再次操作导致File和Position的值发生变化
# 验证slave用户是否可用  fdy-slave/123456# 交互式进入容器
docker exec -it mysql-slave-1 /bin/bash# 登录(使用构建时指定的密码:root)
mysql -uroot -p# 查询server_id值
show variables like 'server_id';# 也可临时(重启后失效)指定server_id的值(主从数据库的server_id不能相同)
set global server_id = 2;# 若之前设置过同步,请先重置
stop slave;
reset slave;# 设置主数据库
# 主机IP端口:192.168.9.149:8808
# 主机帐号密码:fdy-slave/123456
change master to master_host='192.168.9.149',master_port=8808,master_user='fdy-slave', master_password='123456',master_log_file='binlog.000001',master_log_pos=157; # 开始同步
start slave;# 查询Slave状态
mysql> show slave status\G
*************************** 1. row ***************************Slave_IO_State: Waiting for source to send eventMaster_Host: 192.168.9.149Master_User: fdy-slaveMaster_Port: 8808Connect_Retry: 60Master_Log_File: binlog.000001Read_Master_Log_Pos: 157Relay_Log_File: 16f1708b43a0-relay-bin.000002Relay_Log_Pos: 323Relay_Master_Log_File: binlog.000001Slave_IO_Running: YesSlave_SQL_Running: YesReplicate_Do_DB: Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 0Last_Error: Skip_Counter: 0Exec_Master_Log_Pos: 157Relay_Log_Space: 540Until_Condition: NoneUntil_Log_File: Until_Log_Pos: 0Master_SSL_Allowed: NoMaster_SSL_CA_File: Master_SSL_CA_Path: Master_SSL_Cert: Master_SSL_Cipher: Master_SSL_Key: Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: NoLast_IO_Errno: 0Last_IO_Error: Last_SQL_Errno: 0Last_SQL_Error: Replicate_Ignore_Server_Ids: Master_Server_Id: 1Master_UUID: dce2949e-f403-11ef-851f-0242ac110002Master_Info_File: mysql.slave_master_infoSQL_Delay: 0SQL_Remaining_Delay: NULLSlave_SQL_Running_State: Replica has read all relay log; waiting for more updatesMaster_Retry_Count: 86400Master_Bind: Last_IO_Error_Timestamp: Last_SQL_Error_Timestamp: Master_SSL_Crl: Master_SSL_Crlpath: Retrieved_Gtid_Set: Executed_Gtid_Set: Auto_Position: 0Replicate_Rewrite_DB: Channel_Name: Master_TLS_Version: Master_public_key_path: Get_master_public_key: 0Network_Namespace: 
1 row in set, 1 warning (0.00 sec)# 最后需要查看是否配置成功# 查看参数 Slave_IO_Running 和 Slave_SQL_Running是否都为yes,则证明配置成功。若为no,则需要查看对应的 Last_IO_Error 或 Last_SQL_Error 的异常值。# 查看现有数据库
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)# (主库)创建数据库
CREATE DATABASE fdy_user CHARACTER SET utf8mb3 COLLATE = utf8_bin;# (主从)查看是否创建成功
show databases;

注意点

  1. MySQL出现同步问题,根据Last_SQL_Error提示,查具体的表:select * from performance_schema.replication_applier_status_by_worker\G; 就能看到具体错误信息。
  2. 如若服务器重启,在启动docker里面主从镜像,需要留意 server_id 是否有变化,如果发现my.cnf没有生效,就可能需要在容器手动找到文件进行添加 server_id, 我是把映射的文件覆盖容器里面这个路径的文件 【记得备份容器里面的my.cnf】 /etc/my.cnf

出现同步问题解决办法

# (主)重置下master的binlog位点
reset master;# (从)重置下slave
stop slave;
reset slave;# (从)设置主数据库
change master to master_host='192.168.9.149',master_port=8808,master_user='fdy-slave', master_password='123456',master_log_file='binlog.000001',master_log_pos=157; # (从)开始同步
start slave;# 查询Slave状态:Slave_IO_Running 和 Slave_SQL_Running是否都为 yes
show slave status;
http://www.dtcms.com/wzjs/398593.html

相关文章:

  • 手机移动开发网站建设他达拉非什么是
  • 母婴用品购物网站制作网址大全导航
  • 杭州网站建设外包公司广告策划公司
  • 网站友情链接要加什么用站外推广
  • 日本做动漫软件视频网站有哪些东莞网络推广营销公司
  • 用什么做网站后台百度400电话
  • 图片制作教程seo策略工具
  • 2017年政府网站建设情况提高网站流量的软文案例
  • 广州骏域网站建设专家 V打开百度网站
  • 2023山东疫情严重吗现在2022网站seo
  • 海拉尔网站开发西青seo
  • 泰安网站建设公司创建自己的网站怎么弄
  • 网站如何做延迟加载互联网推广怎么做
  • 做自媒体好还是网站好seo方案书案例
  • 如何做网站卖衣服seo优化快排
  • wordpress筛选最新文章昆明网站seo公司
  • 免费php网站线上商城推广软文
  • 做网站销售好吗互联网营销工具
  • 南京网站建设 w长沙百度推广排名优化
  • 适合农村的代加工厂百度谷歌seo优化
  • 网站建设教程免费湖南岚鸿进入百度知道首页
  • 可信网站身份认证宁波seo整体优化
  • 多媒体网站开发助理优化的近义词
  • 北京网站建设课程培训班软文大全
  • 淄博网站建设优化运营熊掌号百度推广关键词技巧定价
  • ppt做多个网站泉州seo代理商
  • 做ppt做好的网站营销技巧和营销方法视频
  • 模板网站价格表如何做宣传推广效果最好
  • 网站登录怎么退出优化技术
  • 网站的域名做邮箱吗网站快速有排名