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

专业网站制作技术semi是什么意思

专业网站制作技术,semi是什么意思,电商网站开发的现状,网页设计国外设计欣赏网站GTID简介概念全局事务标识符(GTID)是创建的唯一标识符#xff0c;并与在源(主)服务器上提交的每个事务相关联。此标识符不但是唯一的#xff0c;而且在给定复制设置中的所有服务器上都是唯一的。所有交易和所有GTID之间都有一对一的映射关系。GTID由source_id和transaction_i…GTID简介概念全局事务标识符(GTID)是创建的唯一标识符并与在源(主)服务器上提交的每个事务相关联。此标识符不但是唯一的而且在给定复制设置中的所有服务器上都是唯一的。所有交易和所有GTID之间都有一对一的映射关系。GTID由source_id和transaction_id组成GTID source_id:transaction_idserver_uuid一般为source_idGTID集合GTID总是保存在主从之间。这意味着您可以通过检查二进制日志来确定应用于任何从属设备的任何事务的来源。另外一旦给定GTID的事务在给定的服务器上被提交任何具有相同GTID的后续事务都被该服务器忽略。因此在主站上提交的事务只在从站上应用一次这有助于保证一致性。GTID的生成和生命周期1事务在主服务器上执行并提交。使用主服务器的UUID和此服务器上尚未使用的最小非零事务序列号为该事务分配一个GTID; GTID被写入到master的二进制日志中2在将二进制日志数据发送到从站并存储在从站的中继日志中从站读取GTID并设置gtid_next这告诉slave下一个事务必须使用这个GTID记录。3从服务器验证这个GTID是否应用此事务。4因为gtid_next不是空的把git_next也就是从主机中获得的GTID写入到二进制日志中。mysql.gtid_executed表该mysql.gtid_executed表使从机能够在从机上禁用二进制日志记录时使用GTID并且可以在二进制日志丢失时保留GTID历史记录。若将mysql.gtid_executed表复位执行RESET MASTER表格提供会周期性的压缩 当数量达到executed_gtid_compression_period值或者日志轮转时候mysql压缩储存值默认为1000压缩线程thread/sql/compress_gtid_tablemysql SELECT * FROM performance_schema.threads WHERE NAME LIKE%gtid%\G*************************** 1. row ***************************THREAD_ID: 26NAME: thread/sql/compress_gtid_tableTYPE: FOREGROUNDPROCESSLIST_ID: 1PROCESSLIST_USER: NULLPROCESSLIST_HOST: NULLPROCESSLIST_DB: NULLPROCESSLIST_COMMAND: DaemonPROCESSLIST_TIME: 1509PROCESSLIST_STATE: SuspendingPROCESSLIST_INFO: NULLPARENT_THREAD_ID: 1ROLE: NULLINSTRUMENTED: YESHISTORY: YESCONNECTION_TYPE: NULLTHREAD_OS_ID: 18677实践两台机器172.16.10.53172.16.10.54步骤1将master 设置read-only使slave赶上master更新速度mysql set global read-only注read-only 设置时候super用户可写普通用户不可写。2停止两台机器mysqladmin -uroot -p shutdown3修改配置启用GTID功能要启用基于GTID的复制必须通过将gtid_mode变量 设置为启用GTID模式启动每个服务器 ON并enforce_gtid_consistency 启用变量以确保只记录对基于GTID的复制安全的语句。在slave机器启动之前使用--skip-slave-start禁用slave的复制进程。由于在MySQL 5.7.5中增加了mysql.gtid_executed所以不需要slave机器启用二进制日志记录来使用GTID 。这意味着您可以使用GTID但没有二进制日志记录的从服务器。为了能够复制主设备必须始终启用二进制日志记录。而slave只需要配置这些变量gtid_modeONenforce-gtid-consistencytrue不过为了高可用的切换推荐选择如下配置gtid_modeON #必选enforce-gtid-consistencytrue #必选log-binmysql #5.6必选 5.7.5和它之后可选为了高可用最好设置server-id1 #开启log-bin的必须设置log-slave-updatesON # 5.6必选 5.7.5和它之后可选为了高可用切换最好设置ON4 配置slave使用GTID来进行同步数据当然需要在master给slave开通权限grant replication slave on *.* to repl172.16.10.53 identified by password;设置GTID同步模式change master to master_host172.16.10.53,master_userrepl,master_port3306,master_passwordpassword,master_auto_position1;注意非端口号需要加上引号5做一个新的备份启用GTID之前创建的现有备份现在不能再在这些服务器上使用因为您启用了GTID。在这一点上做一个新的备份这样你就不会没有可用的备份。比如说物理备份。6启动slave的同步进程mysql start slave问题在启动slave同步进程时候查看日志出现如下问题2018-01-17T09:48:18.116983Z 1 [Warning] Slave SQL for channel : If a crash happens this configuration does not guarantee that the relay log info will be consistent, Error_code: 0什么not consistent绝对不能忍在网上查了下添加如下配置就好了在my.cnf中设置relay_log_info_repository TABLEmaster_info_repository TABLErelay_log_recovery on报错原因:MySQL5.6版本号開始支持把master.info和relay-log.info的内容写入到mysql库的表中。master.info-- mysql.slave_master_inforelay-log.info-- mysql. slave_relay_log_info同一时候在MySQL5.6版本号中添加了 Slave crash-safe replication功能为了保证mysql的replication可以crash-safe。slave_master_info和slave_relay_log_info表必须使用事务型的存储引擎(InnoDB)不要尝试去手动改动这两张表的内容。同一时候Slave还要开启relay_log_recovery功能。解决方法设置master_info_repository和relay_log_info_repository的值为TABLE。同一时候开启relay_log_recovery功能。GTID的故障处理和恢复。1简单的复制在新服务器上重现所有标识符和事务的最简单方法是将新服务器变为具有全部执行历史记录的主服务器的从服务器并在两台服务器上启用全局事务标识符缺点是较慢且需要master保持所有的bin-log2使用mysqldump的方式设置新slave机器(较快)首先使用mysqldump命令备份mysqldump --single-transaction --set-gtid-purgedOFF --triggers --routines --events -uroot -p all.sql此时会出现提示mysqldump: [Warning] Using a password on the command line interface can be insecure.Warning: A partial dump from a server that has GTIDs will by default include the GTIDs of all transactions, even those that changed suppressed parts of the database. If you dont want to restore GTIDs, pass --set-gtid-purgedOFF. To make a complete dump, pass --all-databases --triggers --routines --events.若不需要进行GTID的恢复和从库设置则可以添加--set-gtid-purgedOFF 关闭(默认为ON)若需要进行GTID的主从设置则--set-gtid-purgedON 既可mysqldump --single-transaction --set-gtid-purgedON --triggers --routines --events -uroot -p all.sql查看sql文件中会出现以下语句设置GTID_PURGED来跳过一些事务。---- GTID state at the beginning of the backup--SET GLOBAL.GTID_PURGED7abe211e-fb4f-11e7-b16e-000c29ba88ca:1-69726;然后在slave机器上进行恢复(需要slave开启GTID功能)在恢复时候可能需要下面问题。[rootlocalhost ~]# mysql -uroot -pMysql3200$%^ test /tmp/all.sqlmysql: [Warning] Using a password on the command line interface can be insecure.ERROR 1840 (HY000) at line 24: GLOBAL.GTID_PURGED can only be set when GLOBAL.GTID_EXECUTED is empty.解决办法登录执行reset master 清空 GTID_EXECUTED[rootlocalhost ~]# mysql -uroot -pmysql reset master;Query OK, 0 rows affected (0.02 sec)导入binlog后再start slave既可。mysql show slave status\G*************************** 1. row ***************************Slave_IO_State: Waiting for master to send eventMaster_Host: 172.16.10.53Master_User: replMaster_Port: 3306Connect_Retry: 60Master_Log_File: mysql.000005Read_Master_Log_Pos: 777138Relay_Log_File: localhost-relay-bin.000018Relay_Log_Pos: 88658Relay_Master_Log_File: mysql.000005Slave_IO_Running: YesSlave_SQL_Running: Yes3使用空事务处理故障情况1主键重复Last_Error: Could not execute Write_rows event on table test.a; Duplicate entry 500 for key PRIMARY, Error_code: 1062; handler error HA_ERR_FOUND_DUPP_KEY; the events master log mysql.000005, end_log_pos 651107方法1注入空事务Last_IO_Error_Timestamp:Last_SQL_Error_Timestamp:Master_SSL_Crl:Master_SSL_Crlpath:Retrieved_Gtid_Set: 7abe211e-fb4f-11e7-b16e-000c29ba88ca:66253-68381:69091-70362Executed_Gtid_Set: 7abe211e-fb4f-11e7-b16e-000c29ba88ca:1-70362,9a455b69-fb4f-11e7-b993-000c29e8a43c:1(rootSlave)[tempdb]stop slave sql_thread;(rootSlave)[tempdb]set gtid_next7abe211e-fb4f-11e7-b16e-000c29ba88ca:70363;(rootSlave)[tempdb]begin;commit;(rootSlave)[tempdb]set gtid_nextAUTOMATIC;(rootSlave)[tempdb]start slave sql_thread;(rootSlave)[tempdb]show slave status \G方法2删除冲突行使用GTID的限制涉及非事务性存储引擎的更新。对使用非事务性存储引擎的表进行的更新与在同一事务中使用事务性存储引擎的表的更新混合在一起会导致将多个GTID分配给同一事务。CREATE TABLE ... SELECT语句。在使用基于行的复制时该语句实际上被记录为两个单独的事件 - 一个用于创建表另一个用于将源表中的行插入刚刚创建的新表中。当这个语句在一个事务中被执行时这些事件在某些情况下可能会被接收到相同的事务标识符这意味着包含插入事务的事务被从机跳过。创建临时表。GTID模式和mysql_upgrade当服务器在启用全局事务标识符(GTID)时候不要用mysql_upgrade --write-binlog启用二进制日志记录。
http://www.yutouwan.com/news/406642/

相关文章:

  • 微信网站建设知识wordpress显示段落
  • 活动网站推广网站建商城
  • 做网站是通过怎么挣钱网站建设实训总结200
  • 做的网站进不去后台网页制作软件哪个好用
  • 新手如何做网站的教程沈阳做网站开发公司
  • 网站建设推广公司需要哪些岗位电子商务网站建设的建议
  • 个人网站cms系统网页设计电脑配置推荐
  • 湘西网站建设公司建筑工程招聘信息网
  • 西安网站建设开发公司怎么样做餐饮的餐具网站有哪些
  • 免费素材网站图库湖南金科建设有限公司网站
  • 网站建设运营有限公司网站建设地基本流程
  • 建站平台 做网站设计师论坛
  • 博罗营销网站制作邢台seo服务公司
  • 做网站 什么后缀wordpress教程 页面
  • php与mysql网站开发...河北省建设项目信息网站
  • 广西建设中心培训网站wordpress+系统安装
  • 公司网站建设的环境分析建一个商城型网站
  • 以网站内容建设和运维为主呼和浩特公司网页设计
  • 遵义网站建设公司排名51zwd一起做网店
  • 济南建设工程备案网站长沙网页制作设计
  • 定制商品的网站建设全国最好装修公司排行榜
  • .net搭建企业网站花店网站模板 html
  • 在人才网站做业务大多数软件仍然是定制开发的
  • 怎样做网上代理卖东西长沙网站seo优化
  • 高级网页设计师证wordpress文章页面优化
  • 长沙网站建设优化替网站做任务怎么做的
  • 自己做网站建设注册公司网站
  • 上海陆海建设集团网站鄞州区网站建设报价
  • 微企点建站怎么样郑州市建筑材料信息价
  • 网站建设参考文献外文成品电影网站建设