-
innodb两次编辑 double write 实现解析
所属栏目:[MySql教程] 日期:2022-03-29 热度:106
在innodb存储引擎中,有一个叫doublewrite技术模块,是可选的。它通过参数InnoDB_doublewrite的值来控制,如果为0表示不启用,可以通过show status like %InnoDB_dblwr%来查看,doublewrite技术带给innodb存储引擎的是数据页的可靠性,下面对doublewrite技术[详细]
-
MySQL使用binlog2sql闪回误删掉数据
所属栏目:[MySql教程] 日期:2022-03-29 热度:127
查询数据库相关配置参数 root [test] show global variables like binlog%format%; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | binlog_format | ROW | +---------------+-------+ 1 row in set (0.00 sec) root [tes[详细]
-
MySQL 5.5 mysqldump备份解说
所属栏目:[MySql教程] 日期:2022-03-29 热度:73
mysqldump客户端工具可以执行逻辑备份,生成一系列可以执行的SQL语句。通过这个工具可以备份出一个或多个MySQL数据库。mysqldump命令也可以生成CSV格式、分隔符格式或XML格式的输出文件。 --where=where_condition, -w where_condition 只导出符合指定WHERE[详细]
-
MySQL整体架构与内存构架
所属栏目:[MySql教程] 日期:2022-03-29 热度:185
MySQL整体架构与内存结构: 一 mysql 整体框架: MySQL是由SQL接口,解析器,优化器,缓存,存储引擎等组成的。 1. Connectors指的是不同语言中与SQL的交互。 2. Management Serveices Utilities: 系统管理和控制工具。 3. Connection Pool: 连接池。管理[详细]
-
mysql亿级大表重构方案解说
所属栏目:[MySql教程] 日期:2022-03-29 热度:91
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` i[详细]
-
MySQL自增列主从不一致的测验
所属栏目:[MySql教程] 日期:2022-03-29 热度:171
MySQL里面有一个问题尤其值得注意,那就是自增列的重复值问题,之前也简单分析过一篇,但是在后续我想了下,还有很多地方需要解释,一个就是从库的自增列是如何维护的,是否重启从库,自增列会受到影响。 我们继续来测试一下。首先复现这个问题。 创建表t1,[详细]
-
Percona Toolkit 装置
所属栏目:[MySql教程] 日期:2022-03-29 热度:118
Percona Toolkit(pt工具)是一组用于维护数据库的命令行工具, 大部分是Perl脚本, 其连接数据库, 需要DBI和DBD::mysql的支持. 直接使用yum安装这两个软件包就行. # yum install perl-DBI perl-DBD-MySQL 安装pt工具的依赖后, 就是安装pt本身了(percona-toolkit[详细]
-
MySQL入门--设定session,global变量的方法
所属栏目:[MySql教程] 日期:2022-03-29 热度:115
mysql 设置session,global变量的方法 -- 设置或修改系统日志有效期 SET GLOBAL expire_logs_days=8; SHOW VARIABLES LIKE %expire_logs_days%; -- 设置或修改系统最大连接数 SET GLOBAL max_connections = 2648; SHOW VARIABLES LIKE %max_connections%; 1)[详细]
-
数据库操作必读 SQLAlchemy进门
所属栏目:[MySql教程] 日期:2022-03-29 热度:87
环境 :Ubuntu 15.10 64-bit SQLAlchemy是Python的ORM框架,它的理念是:数据库的量级和性能重要于对象集合,而对象集合的抽象又重要于表和行。 sqlite:///./foo.db SQLAlchemy缺省使用Python内建的sqlite3模块来连接或创建SQLite数据库。执行完create_engin[详细]
-
MYSQL_框架之主从GTID_多主一从
所属栏目:[MySql教程] 日期:2022-03-29 热度:125
注意事项: 1)主服务器1和主服务器2不能不能有相同的数据库名字,否则会出现数据库覆盖的现象。 2) 主服务器1-slave和主服务器2-slave要拥有不同的复制账号 3) 三台机器之间的数据库参数配置要和GTID复制的一样。保证开启GTID功能。 4) server-id之间不一致[详细]
-
在solrais下编辑安装MySQL
所属栏目:[MySql教程] 日期:2022-03-29 热度:134
在solrais下编译安装MySQL(转)[@more@]很多朋友在sun下编译mysql都会有些问题,现在我把编译过程整理如下,希望对大家有所帮助。 环境: sun250+solaris8 过程: 首先要安装solaris8的编译环境,去http://www.sunfreeware.com/下载一下软件: 1.autoconf-2.1[详细]
-
mysql全文搜寻fulltext
所属栏目:[MySql教程] 日期:2022-03-29 热度:146
mysql select * from t2; +------+------+----------------------------+ | a | b | c | +------+------+----------------------------+ | 1 | aa | aa11111111111111111111111 | | 2 | bb | bb222222222222222222222222 | +------+------+-----------------[详细]
-
Innodb关键特征之Adaptive Hash Index
所属栏目:[MySql教程] 日期:2022-03-29 热度:119
众所周知,InnoDB使用的索引结构是B+树,但其实它还支持另一种索引:自适应哈希索引。 哈希表是数组+链表的形式。通过哈希函数计算每个节点数据中键所对应的哈希桶位置,如果出现哈希冲突,就使用拉链法来解决。更多内容可以参考 百度百科-哈希表 Innodb关键[详细]
-
MySQL用户管制
所属栏目:[MySql教程] 日期:2022-03-29 热度:194
MySQL管理员应该知道如何设置MySQL用户账号,指出哪个用户可以连接服务器,从哪里连接,连接后能做什么。MySQL 3.22.11开始引入两条语句使得这项工作更容易做:GRANT语句创建MySQL用户并指定其权限,而REVOKE语句删除权限。两条语句扮演了mysql数据库的前端[详细]
-
数据库运作必读 SQLAlchemy入门
所属栏目:[MySql教程] 日期:2022-03-29 热度:129
环境 :Ubuntu 15.10 64-bit SQLAlchemy是Python的ORM框架,它的理念是:数据库的量级和性能重要于对象集合,而对象集合的抽象又重要于表和行。 安装 直接通过pip安装: $ pip install sqlalchemy 打开Python,测试是否安装成功: import sqlalchemy sqlalch[详细]
-
MYSQL_构架之主从GTID_多主一从
所属栏目:[MySql教程] 日期:2022-03-29 热度:135
环境信息 主服务器1 主服务器2 从服务器1 Ip 192.168.31.79 192.168.31.188 192.168.31.90 hostname mysql mysql2 mysql3 mysql-version 5.7.23 5.7.23 5.7.23 server-id 8e33e4d6-66a2-11ea-b90d-080027c1c1ff 9646d8c8-66a2-11ea-a1e5-080027b0e953 e54ee4[详细]
-
XtraBackup的加量备份
所属栏目:[MySql教程] 日期:2022-03-29 热度:56
实验场景: 两个mysql实例,一个端口为3306,一个端口为3307。 现在要在3306上做增量备份,并将备份恢复到3307上去。 备份: A) 0级备份 innobackupex --default-file=/usr/local/mysql/my.cnf --user=root --password=root --socket=/usr/local/mysql/mysql[详细]
-
MySQL案例--磁盘空间不够 MTS Group recovery失败
所属栏目:[MySql教程] 日期:2022-03-28 热度:139
线上业务,最后一次内测阶段; 背景:MySQL-5.7.12 问题发生的现象: 收到报警信息,业务主库A的心跳检测失败,将备库B升级为业务主库; 问题发生的原因: 业务主库A的数据文件目录的磁盘空间剩余量为0%; 与此同时,不管是start slave还是change master都无[详细]
-
MySql入门基本知识
所属栏目:[MySql教程] 日期:2022-03-28 热度:79
MySql入门--基础知识: 一、Mysql 物理文件组成 (一)日志文件 1、错误日志:Error Log 错误日志记录了MyQL Server 运行过程中所有较为严重的警告和错误信息,以及MySQLServer 每次启动和关闭的详细信息。在默认情况下,系统记录错误日志的功能是关闭的,错[详细]
-
mysql 大事物commit慢造成全库堵塞难题
所属栏目:[MySql教程] 日期:2022-03-28 热度:94
原创转载请注明出处 本文使用引擎INNODB版本MYSQL5.7.13 sync_binlog = 1 innodb_flush_log_at_trx_commit = 1 也就是双1设置, 1、问题由来 在线上环境一次同事删除了1000W的数据,在commit的时候,整个数据库 大约有几十秒的全部hang住的情况,本文就是为[详细]
-
如何确认Single-Primary模式下的MGR主节点
所属栏目:[MySql教程] 日期:2022-03-28 热度:191
MySQL 5.7 可以通过global status group_replication_primary_member 确定 root@db20:59: [mgr] SELECT VARIABLE_VALUE - FROM performance_schema.global_status - WHERE VARIABLE_NAME = group_replication_primary_member; +----------------------------[详细]
-
MySQL执行计划explain的key_len剖析
所属栏目:[MySql教程] 日期:2022-03-28 热度:78
当用Explain查看SQL的执行计划时,里面有列显示了 key_len 的值,根据这个值可以判断索引的长度,在组合索引里面可以更清楚的了解到了哪部分字段使用到了索引。下面演示中,表结构的合理性这边暂且不说,只是证明一下索引长度的计算方法。目前大部分博文是字[详细]
-
mysql之 MySQL 主从基于 GTID 复制原理阐述
所属栏目:[MySql教程] 日期:2022-03-28 热度:83
mysql之 MySQL 主从基于 GTID 复制原理概述: 一、 什么是GTID ( Global transaction identifiers ): MySQL-5.6.2开始支持,MySQL-5.6.10后完善,GTID 分成两部分,一部分是服务的UUid,UUID保存在mysql数据目录的auto.cnf文件中, 这是一个非常重要的文件[详细]
-
MySQL 最容易忽视的常识
所属栏目:[MySql教程] 日期:2022-03-28 热度:111
开发反馈一个表的数据大小已经130G,对物理存储空间有影响,且不容易做数据库ddl变更。咨询了开发相关业务逻辑,在电商业务系统中,每笔订单成交之后会有一条对应的订单物流信息,因此需要设计一个物流相关的表用来存储该订单的物流节点信息,该表使用text字段[详细]
-
MySQL数据库数据文件路径迁移过程
所属栏目:[MySql教程] 日期:2022-03-28 热度:116
MySQL数据库数据文件路径迁移步骤: 一、关闭mysql. $ service mysqld stop 二、将/data/mysql下的mysql目录mv(移动)到data目录。 mysql show variables like datadir; +---------------+-----------------+ | Variable_name | Value | +---------------+-[详细]
