-
事务状态持久化
所属栏目:[MySql教程] 日期:2022-06-27 热度:109
函数接口: trx_lists_init_at_db_start trx_resurrect_insert trx_resurrect_update 事物状态: /*-------------------------------------------------------------*/ #define TRX_UNDO_STATE 0 /*! TRX_UNDO_ACTIVE, ... */ /*-------------------------[详细]
-
MYSQL 连接登录步骤分析
所属栏目:[MySql教程] 日期:2022-06-27 热度:166
MYSQL 连接登录过程分析 在较新MYSQL版本中,默认没有开启线程池的功能,每个客户连接在服务器进程中都拥有自己的线程。 当客户端(应用)连接到MySQL服务器时,服务器要对其进行认证(Authenticate),认证方式基于用户名、原始主机信息和口令。 登录 mys[详细]
-
MariaDB 10.3 instant ADD COLUMN亿级大表毫秒级添字段
所属栏目:[MySql教程] 日期:2022-06-27 热度:171
加字段是痛苦的,需要对表进行重建,尤其是对亿级别的大表,虽然Online DDL可以避免锁表,但如果在主库上执行耗时30分钟,那么再复制到从库上执行,主从复制就出现延迟。使用instant ADD COLUMN特性,只需弹下烟灰的时间,字段就加好了,享受MongoDB那样的[详细]
-
关于xtrabackup slave-info参数的解说
所属栏目:[MySql教程] 日期:2022-06-27 热度:186
--slave-info:该参数表示对slave进行备份的时候使用,打印出master的名字和binlog pos,同样将这些信息以change master的命令写入xtrabackup_slave_info文件。 注意事项: 假如从库开了多线程复制(slave_parallel_workers),但是没开启GTID,运行时会报[详细]
-
mysql启动与关掉 手动与自动
所属栏目:[MySql教程] 日期:2022-06-27 热度:150
手动管理mysql的启动与关闭 [root@mysql ~]# service mysql start --手动启动mysql Starting MySQL. SUCCESS! [root@mysql ~]# service mysql stop --手动关闭mysql Shutting down MySQL.. SUCCESS! [root@mysql ~]# mysqld --verbose --help --查看MySQL[详细]
-
Mariadb多主一从的创建
所属栏目:[MySql教程] 日期:2022-06-27 热度:187
目前MySQL依然只支持一个Slave从一个Master复制数据,虽然也可以做到一主多备(M-S),双主复制(M-M)等架构,但是局限性依然很大。由于项目的要求,需要各个主库的表整合到一个地方进行统计和分析,要是每次连不同的实例操作,是一件非常耗体力的操作。所以[详细]
-
MySQL数据和Redis缓存一致性方式详解
所属栏目:[MySql教程] 日期:2022-06-27 热度:51
读取缓存步骤一般没有什么问题,但是一旦涉及到数据更新:数据库和缓存更新,就容易出现 缓存(Redis)和数据库(MySQL)间的数据一致性问题。 不管是先写MySQL数据库,再删除Redis缓存;还是先删除缓存,再写库,都有可能出现数据不一致的情况。举一个例子[详细]
-
数据库简介与MySQL5.7版本编译安置
所属栏目:[MySql教程] 日期:2022-06-27 热度:102
数据库的基本概念 数据: 描述事物的符号记录称为数据(Data); 包括数字,文字、图形、图像、声音、档案记录等; 以记录形式按统一的格式进行存储。 表: 将不同的记录组织在一起,就形成了表 是用来存储具体数据的 数据库: 数据库就是表的集合,是存储数[详细]
-
MySQL的几个和innodb相关的主要参数设置合集
所属栏目:[MySql教程] 日期:2022-06-27 热度:64
MySQL的几个和innodb相关的主要参数设置总结: 1).innodb_buffer_pool_size 为了提升性能,可以把要写的数据先在缓冲区buffer里合并,然后再发送给下一级存储。这样做可以提高I/O读写的效率。 InnoDB Buffer Pool就是InnoDB用来缓存它的数据和索引的内存缓[详细]
-
mysql自加列
所属栏目:[MySql教程] 日期:2022-06-27 热度:84
mysql自增列: 1、mysql创建带自增列的表 create table inc(id int(10) not null auto_increment,name varchar(20),primary key (id)); 注意: 自增列必须是key 前面的id没有引号,后面设置成key的时候也不能有引号 2、使用自增列 mysql insert into inc v[详细]
-
mysql数据导入难题处理 ERROR 1418 HY000
所属栏目:[MySql教程] 日期:2022-06-27 热度:151
今天在数据导入的时候:gunzip 201708_full.sql.gz |mysql -uroot --default-character-set=utf8 导入过程中报错信息如下: ERROR 1418 (HY000) at line 18216: This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration a[详细]
-
Greenplum 最全分区表运作
所属栏目:[MySql教程] 日期:2022-06-27 热度:182
Greenplum 最全分区表运作: 一、Greenplum 分区原理 分区表意思是将一个大表在物理上分割成几块,GPDB中的分区表和PostgreSQL中实现原理一样,都是用过表继承、约束来实现。但是与PostgreSQL也有所不同,在PostgreSQL中,一个父表,多个子表来实现分区表[详细]
-
查找的时候绕过查询缓存SQL_NO_CACHE
所属栏目:[MySql教程] 日期:2022-06-27 热度:122
在进行sql优化时 第一次查很慢,第二次查因为冲缓存里面查了 会很快 这样 就看不出是优化之后的效果 还是 缓存查询的效果了 所以 在优化时 最好 关闭缓存 来执行sql 如果需要关闭缓存功能 修改参数 query_cache_type query_cache_type=0[详细]
-
mysql存储过程基础函数
所属栏目:[MySql教程] 日期:2022-06-27 热度:190
mysql存储过程基本函数 [@more@]一.字符串类 CHARSET(str) //返回字串字符集 CONCAT (string2 [,... ]) //连接字串 INSTR (string ,substring ) //返回substring首次在string中出现的位置,不存在返回0 LCASE (string2 ) //转换成小写 mysql select substri[详细]
-
Zabbix 监控之 更改管理员用户密码
所属栏目:[MySql教程] 日期:2022-06-27 热度:196
zabbix前端用户的操作都保存在zabbix数据库的users表里。一般直接在数据库里面修改即可。 登入数据库: mysql -uroot -p 2.查看数据库 show databases; 3.进入数据库 use zabbix; 4.查看表 show tables; 5. 刷新权限 flush privileges;[详细]
-
当我们输入一条 SQL 查询语句时 发生了啥
所属栏目:[MySql教程] 日期:2022-06-27 热度:80
我们经常说,看一个事儿千万不要直接陷入细节里,你应该先鸟瞰其全貌,这样能够帮助你从高维度理解问题。同样,对于 MySQL 的学习也是这样。平时我们使用数据库,看到的通常都是一个整体。比如,你有个最简单的表,表里只有一个 ID 字段,在执行下面这个查[详细]
-
MYSQL主从复制布局MHA自动故障转移
所属栏目:[MySql教程] 日期:2022-06-27 热度:98
MYSQL主从复制部署MHA自动故障转移: 一. 环境描述 操作系统:RHEL 6.4 mysql :5.6.27 角色 IP 地址 主机名 Server ID 二、部署MHA 安装 MHA NODE 从 https://github.com/yoshinorim/mha4mysql-node 下载最新版本的 mha4mysql-node 源代码(目前是 0.57版[详细]
-
MySQL的MyISAM和InnoDB引擎的主要区别是哪些
所属栏目:[MySql教程] 日期:2022-06-27 热度:122
MySQL的MyISAM和InnoDB引擎的主要区别是什么? 1.MyISAM不支持事务,而InnoDB支持。InnoDB的AUTOCOMMIT默认是打开的,即每条SQL语句会默认被封装成一个事务,自动提交,这样会影响速度,所以最好是把多条SQL语句显示放在begin和commit之间, 组成一个事务[详细]
-
几款寻常MySQL高可用方案选型解读
所属栏目:[MySql教程] 日期:2022-06-27 热度:83
架构比较简单,使用原生半同步复制作为数据同步的依据 缺点: 完全依赖于半同步复制,如果半同步复制退化为异步复制,数据一致性无法得到保证 需要额外考虑HAProxy、Keepalived的高可用机制 半同步复制优化 半同步复制机制是可靠的。如果半同步复制一直是[详细]
-
SQL简单利用
所属栏目:[MySql教程] 日期:2022-06-27 热度:72
与上一篇的《SQL简单使用-基础篇》相连续的篇章,《SQL简单使用-基础篇》以下简称《基础篇》。在《基础篇》中,主要简单的带大家了解一下SQL命令中最主要的增删改查命令的使用,增INSERT INTO、删DETELE/DROP/TRUNCATE、改UPDATE、查SELECTE。因为增删改查[详细]
-
Percona Xtrabackup innobackup寻常参数说明
所属栏目:[MySql教程] 日期:2022-06-26 热度:170
--defaults-file 同 xtrabackup的--defaults-file参数 --stream=[tar] 备份文件输出格式, tar时使用 tar4ibd ,该文件可在 XtarBackup binary文件中获得.如果备份 时有指定--stream=tar,则 tar4ibd文件所处目录一定要在$PATH中(因为使用的是 tar4ibd去压 缩[详细]
-
从binlog中查出单个表的binlog信息
所属栏目:[MySql教程] 日期:2022-06-26 热度:114
无聊研究binlog写了个提取单个表的binlog 的信息,便于误删恢复数据,这样做的目的是为了减少恢复时其他表可能引起的出错,以及缩短恢复时间 首先研究binlog日志的格式 如下: /*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/; /*!50003 SET @OLD_COMPLETIO[详细]
-
MySQL 日常函数
所属栏目:[MySql教程] 日期:2022-06-26 热度:193
MySQL 日常函数: 1.字符串类函数 输出:12 例如:SELECT RPAD(1,5,0) FROM DUAL; 输出:10000 (18)REVERSE(s) 返回s颠倒顺序 例如:SELECT REVERSE(abc) FROM DUAL; 输出:cba 2.数字类函数 3.日期类函数 (2)CURDATE() 返回当前日期 (3)CURTIME()[详细]
-
Mysql + keepalive高可用创建
所属栏目:[MySql教程] 日期:2022-06-26 热度:195
系统环境:centos6.8 Ip:192.168.137.36 主库 192.168.137.38 从库 主从搭建略 Mysql1 vim /etc/my.cnf binlog-do-db=test log-bin=mysql-bin server-id=1 gtid-mode=ON enforce-gtid-consistency Mysql2 Vim /etc/my.cnf gtid-mode=ON enforce-gtid-cons[详细]
-
MYSQL INNODB replace into 死锁 及 next key lock 解析
所属栏目:[MySql教程] 日期:2022-06-26 热度:99
全文带入了大量自我认知和理解,可能错误,因为水平有限,但是代表我努力分析过。 一、问题提出 问题是由姜大师提出的、问题如下: 表: mysql show create table c G *************************** 1. row *************************** Table: c Create T[详细]