在项目中,经常会碰到往数据库中导入大量数据,以便利用sql进行数据分析。在导入数据的过程中会碰到一些需要解决的问题,这里结合导入一个大约4G的txt数据的实践,把碰到的问题以及解决方法展现出来,一方面自己做个总结记录,另…
分类:MySql
sql中in、exists、not in、not exists的区别
exists和in的含义 exists的理解 exists对主表用loop逐条查询,每次查询都会查看exists的条件语句,当 exists里的条件语句能够返回记录行时(无论记录行是的多少,只要能返回),条件就为真,返回…
查询CPU占用高的SQL语句的解决方案
触发器造成死锁、作业多且频繁、中间表的大量使用、游标的大量使用、索引的设计不合理、事务操作频繁、SQL语句设计不合理,都会造成查询效率低下、影响服务器性能的发挥。我们可以使用sql server自带的性能分析追踪工具sq…
SQL Server 约束的管理
约束是一种限制。通过在列级或表级设置约束,确保数据符合某种数据完整性规则。 约束的类型 域约束:域约束处理一个或多个列,例如CHECK约束和DEFAULT约束。 实体约束:实体约束都是关于比较行的,例如主键约束和唯一约束…
win7下MySQL 5.7 版本安装与使用
1. 配置my.ini : 添加basedir和datadir;注意:在window下需要 \\s ,否则会被转义错 误。 basedir = C:\\software\MySQL\MySQL Server 5.7 da…
GNU Make安装升级
make 官方下载地址 make4.2(GNU make)的安装步骤 解压 tar -zxvf make4.2.tar.gz 安装 cd make4.2 ./configure make && make …
踩到的 Mongodb key的坑
今天服务器重启了,发现用户数据不能存档。查找后发现是由于用户数据里存在了这种类型的 map:{"a.b.c": 1 } ,在存档进mongodb时,由于服务器进行了一些处理,导致存档失败。 正常情况下这种类型的key 是…
深入理解mysqldump参数 --single-transaction --lock-all-tables
在mysqldump过程中,之前其实一直不是很理解为什么加了–single-transaction就能保证innodb的数据是完全一致的,而myisam引擎无法保证,必须加–lock-all-ta…
《数据库系统概念》20-恢复系统
计算机系统因磁盘、电源、软件等的原因发生故障时,会造成数据库系统信息的丢失。此外,事务也可能因各种原因失败,如破坏了完整性约束或发生了死锁。数据库系统的一个重要组成部分就是恢复机制,它负责检测故障以及将数据库恢复至故障发…
Mysql乐观锁与悲观锁
1.乐观锁 在更新数据前认为不会有人同时修改该数据,在更新时再去校验数据是否被修改过 实现方式: 通过给表字段增加version或者updated_at,每次更新数据后给version+1或者修改updated_at为当…
MySQL 处理重复数据
1、查询重复记录 select user_name,count(*) as count from user_table group by user_name having count>1; select * fro…
redis与Mysql的数据一致性
为了减少db的读压力,加快读速度,系统使用cache做缓存,会引起cache一致性问题。因为db会有事务性导致回滚,而cache无法回滚,会导致脏数据。 一般情况下,我们会在保存数据时,先穿透保存到DB中,再同步数据到r…