![](https://img-blog.csdnimg.cn/20201210124208228.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
MySQL
mysql
岁月呀
往事如风随风散
展开
-
Mysql高级知识体系梳理
mysql高级知识脉络原创 2023-02-27 16:58:14 · 149 阅读 · 1 评论 -
生产环境sql优化记录:大表join性能优化
sql优化原创 2023-02-14 17:56:58 · 234 阅读 · 0 评论 -
Mysql主从复制
1、原理1)master数据库开启bin log日志,每次数据更新都将串行化写入到二进制日志中2)slave数据库启动一个I/O 线程从master服务器上读取最近的更新到relay log(中继日志)3)slave数据库启动SQL线程从中继日志中读取并且写入到slave数据库中master和slave数据库都会记录bin log日志的一个position,能根据position来持续处理日志。一般slave的sql线程和i/o线程同步一致的话,relay log都是缓存在操作系原创 2020-12-15 11:15:10 · 227 阅读 · 1 评论 -
MySQL从节点同步失败问题记录
1、原因:记录一次线上运行过程中,发现从节点同步失败问题。2、问题排查show slave status发现同步失败的原因是主库创建账号,故停止同步,并且跳过执行的错误sql,继续从下一条SQL开始同步3、解决:跳过错误SQL并恢复同步mysql> stop slave;mysql> set global sql_slave_skip_counter = 1;mysql> start slave;mysql> show slave status \G...原创 2022-03-19 15:32:22 · 801 阅读 · 0 评论 -
生产库升级mysql 5.7.28版本到8.0.20
前言服务器系统版本:CentOS Linux release 7.3.1611 (Core)mysql版本: 5.7.28升级版本:8.0.20mysql架构为keepalived + mysql 实现双主热备,主从复制。升级时建议先升级从库。升级mysql8.0.x版本需要注意的新特性:MySQL8.0以下几点新特性:默认字符集为utf8mb4。MyISAM系统表全部换成InnoDB表。JSON特性增强。支持不可见索引,支持直方图。sql_mode参数默认值变化(原创 2020-07-07 20:38:09 · 994 阅读 · 0 评论 -
MySQL的事务ACID特性及其实现原理
1. 事务是什么? 事务:访问并可能更新数据库中数据的一个程序执行单元。 在进一步聊事务时有必要先了解下事务的存储引擎,数据库的存储引擎可以通过show engines来查询,这里只谈常用的两种: MyISAM:不支持事务,只支持表锁,不支持行锁。 InnoDB(MySQL默认存储引擎):支持事务,支持表锁和行锁,因此并发情况下性能较MyISAM性能要好。可...原创 2019-11-28 01:18:25 · 766 阅读 · 0 评论 -
如何简单实现mysql数据库迁移
业务场景:需要将服务器A上的mysql数据库迁移到另外一台服务器B。1. 用ssh终端连接服务器A2. mysqldump指令将数据库表/数据保存成xx.sql文件存到本地#导出数据到/root/目录下# 导出所有数据库的表结构和数据mysqldump -uroot -p123456 --all-databases > /root/alldata.sql# 导出指定数据......原创 2020-02-21 16:26:40 · 8127 阅读 · 1 评论 -
mysql时间段统计,没有数据的时间补0
mysql统计原创 2023-01-09 18:20:56 · 840 阅读 · 0 评论 -
MySQL数据库优化:SQL优化
SQL优化步骤: 在应用开发过程中,由于初期数据量较小,或者赶进度等原因,开发人员对于SQL更偏向于功能的实现。随着生产数据量的不断增加,SQL开始出现性能问题,对生产的影响也越来越大,这时候SQL性能问题就会成为系统的瓶颈。因此必须对SQL进行优化。1. 查看SQL执行频率连接MySQL后,可以通过下面语句来查看数据库中全局或当前连接的增删改查SQL的执行频率:...原创 2019-12-15 17:06:24 · 2121 阅读 · 2 评论 -
MySQL定时执行存储过程
1、创建存储过程CREATE DEFINER=`root`@`%` PROCEDURE `synData`()BEGIN drop table if exists user; create table user select * from rych.user;END2、创建定时任务事件CREATE DEFINER=`root`@`localhost` EVENT `loop_syn` ON SCHEDULE EVERY 20 MINUTE STARTS '2022-03-18 03:0原创 2022-03-18 23:59:17 · 3705 阅读 · 0 评论 -
mysql函数之字符串函数
1.字符串拼接# 拼接所有select concat('%', 'hello', '%') as str >>> '%hello%'# 以第一个字符为分隔拼接select concat_ws('-', 'w', 'h', 'f') >>> 'w-h-f'# LPAD(s1,len,s2) 在字符串 s1 的前面添加字符串 s2,使字符串的长度达到 lenselect lpad('java', '10', 'run') >>> run原创 2020-08-14 16:33:07 · 74 阅读 · 0 评论 -
mysql清空表命令truncate和delete的区别
mysql中truncate和delete都能够清空表,但是两者之间又有所区别:# truncate 语法格式truncate table table_name# delete 语法格式delete from table_name区别:1.delete删除是一条条删除,truncate是整体删除2.truncate会将自增id值重置为0,而delete仍然记录下一次自增id值(AUTO_INCREMENT)3.truncate不会记录日志,而delete会记录日志,delete原创 2020-08-04 13:06:07 · 635 阅读 · 0 评论 -
mysql使用sql操作表,索引,列,更新新增列数据
一、操作表1. 查看表结构desc `table_name`2. 重命名表alter table `table_name` rename to `new_table_name`3. 查看表创建语句show create table `table_name`二、添加索引1. 创建单个普通索引alter table `table_name` add index index_name (`column_name`)2. 创建普通复合索引alter tabl..原创 2020-07-20 11:38:09 · 393 阅读 · 0 评论 -
查询mysql数据库表结构设计并导出Excel
在mysql的information_schema数据库的COLUMNS表中,记录了全部数据库的表结构字段信息。可以通过查询COLUMNS表中COLUMN_NAME来查询表结构的属性信息,比如字段名,字段类型,数据类型,默认值,注释等。以Navicat为例可视化查询并导出Excel:1. 新建查询,并输入SQL查询//查询SQLselect column_name ...原创 2020-02-14 11:38:13 · 982 阅读 · 0 评论 -
数据库Druid连接池详细配置
下面是yml格式的Druid连接池配置示例及各项参数解释:datasource: url: jdbc:mysql://localhost:3306/blank1?useUnicode=true&characterEncoding=UTF8&serverTimezone=Asia/Shanghai username: root password...原创 2020-01-12 23:58:41 · 1790 阅读 · 0 评论