随笔分类 - Mysql
摘要:每次利用终端 创建数据库或者创建表的时候,字符集都是latin1,或者进行插入值的时候,显示的是乱码(不指定字符集的时候)如下: 查看当前数据库的字符集 character_set_client:客户端请求数据的字符集character_set_connection:客户机/服务器连接的字符集cha
阅读全文
摘要:MYSQL 升级方式有两种,一种叫做In-place Upgrade,另一种叫logical upgrade(逻辑升级方式)。 Logical upgrade:利用mysqldump直接导出sql文件,然后倒入到新库中,适用于跨度大的版本的升级方案,做法相对安全,并能整理表中碎片。但如果有数据量较大
阅读全文
摘要:1、innodb存储引擎的增强 A:Online alter table以及索引 alter table t rename index t_idx to t_newidx; Varchar列的大小在线调整的方法: Alter table t1 algorithm=inplace,change col
阅读全文
摘要:文档结构如下: 1、ProxySQL说明 ProxySQL是mysql的一款中间件的产品,是灵活的mysql代理层,可以实现读写分离,支持query路由器的功能,支持动态指定sql进行缓存,支持动态加载配置,故障切换和一些sql的过滤功能。 其他产品:Dbproxy,MyCAT,OneProxy等。
阅读全文
摘要:在高可用集群环境中,keepalived使用的是VIP,利用keepalived自带的服务监控功能和自定义脚本来实现MYSQL故障时自带切换。 Keepalived基于VRRP协议,虚拟冗余路由协议,所谓vrrp的优先级就是它会根据优先级来确定其他在集群中的地位,用0-255来表示,数字越小则表示优
阅读全文
摘要:文章结构如下: 1、MHA简介 Masterhigh availability manager and toolsfor mysql,是日本的一位mysql专家采用perl语言编写的一个脚本管理工具,该工具进适用于msql replication环境。目的在于维持master主库的高可用性,MHA是
阅读全文
摘要:结构如下: MYSQL主从复制方式有默认的复制方式异步复制,5.5版本之后半同步复制,5.6版本之后新增GTID复制,包括5.7版本的多源复制。 MYSQL版本:5.7.20 操作系统版本:linux 6.7 64bit 1、异步复制 MYSQL 默认的复制方式,就是主库写入binlog日志后即可成
阅读全文
摘要:文档结构: 在生产环境中如果遇到误删,改错数据的情况,利用mysql闪回工具binlog2sql,可以实现数据的快速回滚,从binlog中提取SQL,并能生成回滚SQL语句。Binlog以event作为单位记录数据库变更的数据信息,闪回就是可以重现这些变化数据信息之前的操作。也就是说,对于inser
阅读全文
摘要:文章结构如下: 从MYSQL5.6版本开始,引入了传输表空间这个功能,可以把一张表从一个数据库移到另一个数据库或者机器上。迁移的时候很方便,尤其是大表。 由于本次达到测试使用版本5.6.38传到5.7.20。 1、数据库详情 传输和被传输数据库条件: 1、mysql版本必须是5.6及以上的版本。 2
阅读全文
摘要:结构如下: 热备分为逻辑备份和裸文件备份。 裸文件备份比逻辑备份在速度上更快一些,因为它在底层复制数据文件。世界上唯一一款开源的,能够对INNODB和XtrDB数据库进行热备的开源工具。 他的优点是备份与恢复过程的速度很快,安全可靠并且咋备份过程中不会锁表,不影响现有业务。但是目前还是不能对表结构文
阅读全文
摘要:select … into outfile 'path' 备份 此种方式恢复速度非常快,比insert的插入速度要快的多,他跟有备份功能丰富的mysqldump不同的是,他只能备份表中的数据,并不能包含表的结构。如果备份完成之后,表被drop,是无法实现恢复操作的(除非有表结构)。 mysql> s
阅读全文
摘要:文档结构: mysqldump备份影响性能,可能会把内存里面的热数据给冲刷掉,5.7后,新增一个参数,innodb_buffer_pool_dump_pct,控制每个innodb_buffer中转存活跃的使用innodb buffer pages的比例,只有当数据在1s内再次被访问时,才能放到热区域
阅读全文
摘要:MYSQL中,int(n)括号里面的数据n无论写成多少,都是占4个字节的空间,最多能够存10位数。N不代表能够存多少位数,显示宽度M与数据所占用空间,数值的范围无关。 如果在定义字段的时候指定zerofill,那么当数值的显示宽度小于指定的列宽度时候,则默认补充的空格用0代替,例如定义了zerofi
阅读全文
摘要:记录mysql数据库真正执行更改的所有操作(DML语句),不包含那些没有修改任何数据的语句,不会记录select和show这样的语句。 二进制日志的作用: 1、 可以完成主从复制的功能 2、 进行恢复操作。 数据可以通过binglog日志,使用mysqlbinlog命令,实现基于时间点和位置的恢复操
阅读全文
摘要:文章结构图: 一、MYSQL5.6密码丢失 1. 强行停止MYSQL 丢失超级管理用户ROOT的密码是致命的,可以通过--skip-grant-tables参数来跳过权限表。 停止MYSQL,强行杀进程。 kill -9 2311 3068 ps -ef |grep mysql 丢失超级管理用户RO
阅读全文
摘要:文档结构图如下: 一、前期规划 1、软件环境以及说明 操作系统:RedHat Linux 6.7 64位 数 据 库:MYSQL5.6.38/5.7.20 MySQL 5.6:初始化数据时需要进到家目录的 script 目录下 执行: /usr/local/mysql/scripts/mysql_i
阅读全文