-
mysql亿级大表重构方案解说
所属栏目:[MySql教程] 日期:2022-03-29 热度:128
mysql亿级大表重构方案介绍 生产环境favourite表5.8亿,情况如下: 表名 表结构 rows 数据库版本 favourite CREATE TABLE `favourite` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_id` int(11) NOT NULL, `target_type` int(11) NOT NULL, `target_id`[详细]
-
MySQL自增列主从不一致的测验
所属栏目:[MySql教程] 日期:2022-03-29 热度:154
MySQL里面有一个问题尤其值得注意,那就是自增列的重复值问题,之前也简单分析过一篇,但是在后续我想了下,还有很多地方需要解释,一个就是从库的自增列是如何维护的,是否重启从库,自增列会受到影响。 我们继续来测试一下。首先复现这个问题。 创建表t1[详细]
-
Percona Toolkit 装置
所属栏目:[MySql教程] 日期:2022-03-29 热度:137
Percona Toolkit(pt工具)是一组用于维护数据库的命令行工具, 大部分是Perl脚本, 其连接数据库, 需要DBI和DBD::mysql的支持. 直接使用yum安装这两个软件包就行. # yum install perl-DBI perl-DBD-MySQL 安装pt工具的依赖后, 就是安装pt本身了(percona-toolk[详细]
-
MYSQL学习系列--DDL语言
所属栏目:[MySql教程] 日期:2022-03-29 热度:156
DDL语句: 对数据库内部的对象进行创建、删除、修改等操作的语言,DDL语句更多的是由数据库管理员(DBA)使用,开发人员一般很少使用登录mysql之后就可以使用sql语句对数据库进行各种操作啦! 实践操作: 在基础操作之前,如果没有安装mysql的可以参考我之前[详细]
-
MySQL垂直拆分和水平拆分的优缺点和共同点归纳
所属栏目:[MySql教程] 日期:2022-03-29 热度:85
数据的拆分(Sharding)根据其拆分分规则的类型,可以分为两种拆分模式。一种是按照不同的表(或者Schema)来切分到不同的数据库(主机)之上,这种切可以称之为数据的垂直(纵向)拆分; 另外一种则是根据表中的数据的逻辑关系,将同一个表中的数据按照某[详细]
-
MySQL运用bin-log异库恢复到指定时间点
所属栏目:[MySql教程] 日期:2022-03-29 热度:124
MySQL使用bin-log异库恢复到指定时间点: 1、搭建初始化数据库 2、确定日志的位置position 3、备份数据库T0 4、模拟数据库发生变化T1 5、模拟数据库发生变化T2 6、恢复数据库到备份时间点T0 7、模拟数据库恢复到时间点T1 8、模拟数据库恢复到时间点T2 1、[详细]
-
MySQL定期自动删掉表
所属栏目:[MySql教程] 日期:2022-03-29 热度:112
单位8亿多条的日志表,经过自动分表之后,需要自动删除30天前创建的日志表。 但是只是在Master下线这些日志表,而Slave还需要保持在线,以备查询。 由于Master-Slave结构,在Drop表之前,设置@@session.sql_log_bin=0,那么Drop的行为就没有记录到binlog,[详细]
-
Mysql在windows上安装后卸载重新安置需要root用户密码
所属栏目:[MySql教程] 日期:2022-03-29 热度:108
今天准备继续学习Mysql,把当前windows上的Mysql环境给卸载了重装,在安装的过程中一直报需要current root password,一直不知道咋回事,下面是解决办法。 1.清除MYSQL的安装目录,默认是C:Program Files (x86) 2.清除MYSQL数据存放目录,我的机器上在C:P[详细]
-
Mysql 从库每隔一段时间就重开
所属栏目:[MySql教程] 日期:2022-03-29 热度:191
背景:HuaYun_Interface-SLAVE从库每隔一段时间slave复制进程便停掉,zabbix发送告警短信 mysql show slave statusG; *************************** 1. row *************************** Slave_IO_State: Master_Host: ***** Master_User: repl Master_Por[详细]
-
从业务层面对MySQL高可用方案实行分解
所属栏目:[MySql教程] 日期:2022-03-29 热度:64
相对于传统行业的相对服务时间9x9x6或者9x12x5,因为互联网电子商务以及互联网游戏的实时性,所以服务要求7*24小时,业务架构不管是应用还是数据库,都需要容灾互备,在mysql的体系中,最好通过在最开始阶段的数据库架构阶段来实现容灾系统。所以这里从业[详细]
-
innodb两次编辑 double write 实现解析
所属栏目:[MySql教程] 日期:2022-03-29 热度:161
在innodb存储引擎中,有一个叫doublewrite技术模块,是可选的。它通过参数InnoDB_doublewrite的值来控制,如果为0表示不启用,可以通过show status like %InnoDB_dblwr%来查看,doublewrite技术带给innodb存储引擎的是数据页的可靠性,下面对doublewrite技[详细]
-
MySQL使用binlog2sql闪回误删掉数据
所属栏目:[MySql教程] 日期:2022-03-29 热度:198
查询数据库相关配置参数 root [test] show global variables like binlog%format%; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | binlog_format | ROW | +---------------+-------+ 1 row in set (0.00 sec) root [t[详细]
-
MySQL 5.5 mysqldump备份解说
所属栏目:[MySql教程] 日期:2022-03-29 热度:194
mysqldump客户端工具可以执行逻辑备份,生成一系列可以执行的SQL语句。通过这个工具可以备份出一个或多个MySQL数据库。mysqldump命令也可以生成CSV格式、分隔符格式或XML格式的输出文件。 --where=where_condition, -w where_condition 只导出符合指定WHER[详细]
-
MySQL中的show命令
所属栏目:[MySql教程] 日期:2022-03-29 热度:74
mysql help show Name: SHOW Description: SHOW has many forms that provide information about databases, tables, columns, or status information about the server. This section describes those following: SHOW [FULL] COLUMNS FROM tbl_name [FRO[详细]
-
关于mysql5.6 的排序问题
所属栏目:[MySql教程] 日期:2022-03-29 热度:144
mysql 5.6 的排序进行了优化. 同样的sql , 在5.5 跟5.6 上可能得到不同的结果: CREATE TABLE `TestCase2` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `aValue` decimal(19,2) NOT NULL, `accuracyClassType_id` bigint(20) NOT NULL, `productType_id` b[详细]
-
cmake源码编译安装mysql-5.5.32 多实例遇到的坑
所属栏目:[MySql教程] 日期:2022-03-29 热度:200
授人以鱼,我是怎么找到的? 坑2:cmake配置报错因为后面有空格导致的,cmake编译参数正确的为如下: cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.5.32 -DMYSQL_DATADIR=/application/mysql-5.5.32/data -DMYSQL_UNIX_ADDR=/application/my[详细]
-
生产mysql在线配置主从
所属栏目:[MySql教程] 日期:2022-03-29 热度:180
生产mysql在线配置主从: 一、将主库数据导出 mysqldump -uuser -ppassword -S /tmp/mysql.sock --single-transaction --master-data=2 --all-databases --triggers --routines --events /root/master_dump.sql 二、在主库创建主从复制用户 mysqlgrant rep[详细]
-
mysql加快alter操作
所属栏目:[MySql教程] 日期:2022-03-29 热度:200
mysql的alter table 操作的性能对大表来说是个大问题.mysql执行大部分修改表结构的操作方法是用新的结构创建一个空表,从旧表中查出所有数据插入新表,然后删除旧表.这样操作可能花费很长时间,如果内存不足而表又很大,而且还有很多索引的情况下,此种情况更甚[详细]
-
MySQL 5.7中新增sys schema后,会有什么变化
所属栏目:[MySql教程] 日期:2022-03-29 热度:118
MySQL 5.7中引入了一个新的sys schema,sys是一个MySQL自带的系统库,在安装MySQL 5.7以后的版本,使用mysqld进行初始化时,会自动创建sys库,sys库里面的表、视图、函数、存储过程可以使我们更方便、快捷的了解到MySQL的一些信息,比如哪些语句使用了临时[详细]
-
关于mysql中root权限丢失的问题
所属栏目:[MySql教程] 日期:2022-03-29 热度:101
听说执行了一条语句:revoke all on *.* from root@localhost; --呵呵,当时到底是怎样的心理活动,这是怎样的恨。。。 于是小菜就做了一个实验,心里感觉应该和密码丢失后跳过权限重新设置密码的解决方法是一样的,当然这只是思路,试试才知道。 首先停止[详细]
-
MySQL 5.6对大表做归档
所属栏目:[MySql教程] 日期:2022-03-29 热度:174
环境:MySQL 5.6 主从环境(Keepalived架构) 4000W行大表进行历史数据归档。 方案:为尽量降低对业务影响,决定采取下列方案。 1、在主库建立 2016、2017、2018、2019的4个历史表结构。 2、在从库建立test库,并建立 2016、2017、2018、2019的4个历史表结[详细]
-
MySQL5.7新版本的运维,性能和新特性介绍
所属栏目:[MySql教程] 日期:2022-03-29 热度:171
运维 在线启停GTID 在线配置Replication Filter,无需重启 Change Master到另外一个主库无需停止apply线程 Change Master修改一些日志apply属性(例如master_delay)无需停止IO线程 增加大量Performance Schema表用于监控复制 性能 更好的复制性能(logical[详细]
-
计算mysql buffer的命中率及使用率
所属栏目:[MySql教程] 日期:2022-03-29 热度:177
MyISAM Key buffer命中率: 100 - ( (Key_reads * 100) / Key_read_requests ) MyISAM Key buffer的使用率: 100 - ( (Key_blocks_unused * key_cache_block_size) * 100 / key_buffer_size ) InnoDB Buffer Pool 的命中率 (Innodb_buffer_pool_read_reque[详细]
-
msyql 的半同时复制
所属栏目:[MySql教程] 日期:2022-03-29 热度:168
mysql的半同步复制: mysql的异步复制:mysql默认使用异步方式进行同步,master在执行客户端提交的事务后会将结果返回给客户端,表示客户端的操作已经生效,同时会将该操作的binlog通过dumper通知slave来取,再正常情况下,slave会将该binlog写入本地,并[详细]
-
mysql备份恢复实例丢失事务解析
所属栏目:[MySql教程] 日期:2022-03-29 热度:79
看到了一篇server id导致mysql备份恢复的时候丢失事务的文章,特此重现一下。 主备开启了GTID,实验过程如下: 1.主库执行: create database test1; create database test2; 2.主从没有延迟后备份,利用从库备份,物理或者逻辑都可以: mysqldump -uroot[详细]