数据库技术

为什么要加密? 现在的开发习惯,无论是公司的项目还是个人的项目,都会选择将源码上传到 Git 服务器(GitHub、Gitee 或是自建服务器),但只要将源码提交到公网服务器就会存在源码泄漏的风险,而数据库配置信息作为源码的一部分,一旦出现源码泄漏,那么数据库中的所有数据都会公之于众,其产生的不良后果无法预期(比如某某酒店的信息)。 于是为了避免这种问题的产生,我们至少要对数据库的密码进行加密操作,这样即使得到了源码,也不会造成数据的

2022-10-27  366
数据库技术

2022-10-27  439
数据库技术

图片来自 Pexels 事情的起因 公司的交易量比较大,使用的数据库是 MySQL,每天的增量差不多在百万左右,公司并没有分库分表,所以想维持这个表的性能只能考虑做数据迁移。 同事李某接到了这个任务,于是他想出了这两个方案: 先通过程序查询出来,然后插入历史表,再删除原表。 使用 insert into select 让数据库 IO 来完成所有操作。 第一个方案使用的时候发现一次性全部加载,系统直接就 OOM 了,但是分批次做

2022-10-27  404
数据库技术

图片来自 Pexels MySQL 的发展史 MySQL 的历史可以追溯到 1979 年,它的创始人叫作 Michael Widenius,他在开发一个报表工具的时候,设计了一套 API。 后来他的客户要求他的 API 支持 sql 语句,他直接借助于 mSQL(当时比较牛)的代码,将它集成到自己的存储引擎中。但是他总是感觉不满意,萌生了要自己做一套数据库的想法。 一到 1996 年,MySQL 1.0 发布,仅仅过了几个月的时间

2022-10-27  374
数据库技术

之前我们重点建设了数据克隆的一个服务,其实起这个名字也琢磨了好久,说逻辑备份恢复很多业务同学都不大能理解,GET到我们要解决的问题,而数据克隆的概念就比较清晰。 先来说说我们对数据克隆的定义 1)数据克隆快速从线上导出指定库/表数据,并构建虚拟环境,从而来提供高效的数据服务; 2)功能方面实现了业务自助提取数据,分钟级构建环境,可以通过workbench等工具访问数据,无需DBA介入; 3)安全方面支持数据库操作日志审计,已接入ES审

2022-10-27  386
数据库技术

前言: 在 MySQL 中,我们可以为表字段设置默认值,在表中插入一条新记录时,如果没有为某个字段赋值,系统就会自动为这个字段插入默认值。关于默认值,有些知识还是需要了解的,本篇文章我们一起来学习下字段默认值相关知识。 1.默认值相关操作 我们可以用 DEFAULT 关键字来定义默认值,默认值通常用在非空列,这样能够防止数据表在录入数据时出现错误。 创建表时,我们可以给某个列设置默认值,具体语法格式如下: #格式模板 <字段名&

2022-10-27  350
数据库技术

一、前言 最近经常碰到开发误删除误更新数据,这不,他们又给我找了个麻烦,我们来看下整个过程,把我坑得够惨。 二、过程 由于开发需要在生产环节中修复数据,需要执行120条SQL语句,需要将数据进行更新,于是开发连上了生产数据库,首先执行了第一条SQL : updatetablenamesetsource_name="bj1062-北京市朝阳区常营北辰福第" wheresource_name="-北京市朝阳区常

2022-10-27  348
数据库技术

一、大纲 ####2019121910:10:10,234|com.alibaba.druid.filter.logging.Log4jFilter.statementLogError(Log4jFilter.java:152)|ERROR|{conn-10593,pstmt-38675}executeerror.updatexxxsetxxx=?,xxx=?whereRowGuid=? com.mysql.jdbc.exception

2022-10-27  382
数据库技术

索引,可能让好很多人望而生畏,毕竟每次面试时候 MySQL 的索引一定是必问内容,哪怕先撇开面试,就在平常的开发中,对于 SQL 的优化也而是重中之重。 可以毫不夸张的说,系统中 SQL 的好坏,是能直接决定你系统的快慢的。但是在优化之前大家是否想过一个问题?那就是:我们优化的原则是什么?优化SQL的理论基础是什么? 虽然说实践出真知,但是我更相信理论是支撑实践的基础,因为我们不可能毫无目的的去盲目的实践,因为这样往往事倍功半。 所

2022-10-27  331

zblog模板

牛资源