51dev.com IT技术开发者社区

51dev.com 技术开发者社区

mysql事务select for update及数据的一致性处理讲解

mysql事务select for update及数据的一致性处理讲解

MySQL中的事务,默认是自动提交的,即autocommit=1;但是这样的话,在某些情形中就会出现问题:比如:如果你想一次性插入了1000条数据,mysql会commit1000次的,如果我们把autocommit关闭掉[autocommit=0],通过程序来控制,只要一次commit就可以了,这...

MySQL关于sql_mode解析与设置讲解

MySQL关于sql_mode解析与设置讲解

昨晚在往MySQL数据库中插入一组数据时,出错了!数据库无情了给我报了个错误:ERROR1365(22012):Divisionby0;意思是说:你不可以往数据库中插入一个除数为0的运算的结果。于是乎去谷歌了一番,总算是明白了其中的原因:是因为MySQL的sql_mode模式限制着一些所谓的‘不合法...

MySQL中可为空的字段设置为NULL还是NOT NULL

MySQL中可为空的字段设置为NULL还是NOT NULL

经常用mysql的人可能会遇到下面几种情况:1、我字段类型是notnull,为什么我可以插入空值2、为什么notnull的效率比null高3、判断字段不为空的时候,到底要用select*fromtablewherecolumn<>‘‘还是要用select*fromtablewhereco...

MySQL组合索引与最左匹配原则详解

MySQL组合索引与最左匹配原则详解

前言之前在网上看到过很多关于mysql联合索引最左前缀匹配的文章,自以为就了解了其原理,最近面试时和面试官交流,发现遗漏了些东西,这里自己整理一下这方面的内容。什么时候创建组合索引?当我们的where查询存在多个条件查询的时候,我们需要对查询的列创建组合索引为什么不对没一列创建索引减少开销覆...

MySQL中字段类型char、varchar和text的区别

MySQL中字段类型char、varchar和text的区别

在MySQL中,char、varchar和text类型的字段都可以用来存储字符类型的数据,char、varchar都可以指定最大的字符长度,但text不可以。它们的存储方式和数据的检索方式也都不一样。数据的检索效率是:char>varchar>text具体说明:char:存储定长数据很方...

优化InnoDB表BLOB,TEXT列的存储效率

优化InnoDB表BLOB,TEXT列的存储效率

首先,介绍下关于MySQLInnoDB引擎存储格式的几个要点:1、InnoDB可以选择使用共享表空间或者是独立表空间方式,建议使用独立表空间,便于管理、维护。启用innodb_file_per_table选项,5.5以后可以在线动态修改生效,并且执行ALTERTABLExxENGINE=InnoDB...

MySQL数据库列的增删改实现方法

MySQL数据库列的增删改实现方法

本文实例讲述了MySQL数据库列的增删改实现方法。分享给大家供大家参考,具体如下:新建表user_info:CREATETABLEuser_info(idINTNOTNULLPRIMARYKEYAUTO_INCREMENT,usernameCHAR(20)NOTNULLDEFAULT‘‘,gende...

MySQL数据库迁移快速导出导入大量数据

MySQL数据库迁移快速导出导入大量数据

数据库迁移是我们经常可遇到的问题,对于少量的数据,迁移基本上不会有什么问题。生产环境中,有以下情况需要做迁移工作:磁盘空间不够。比如一些老项目,选用的机型并不一定适用于数据库。随着时间的推移,硬盘很有可能出现短缺;业务出现瓶颈。比如项目中采用单机承担所有的读写业务,业务压力增大,不堪重负。如果IO压...

insert和select结合实现

insert和select结合实现"插入某字段在数据库中的最大值+1"的方法

本文是mysql数据库问题一将表一的数据导入表二:将表一的数据导入表二:将表二中的数据插入到表一,表一的列对应表二select出来的列INSERTINTO表一(column1,column2,column3,column4)selectcolumn1,column2,column3,column4f...

MySQL实现类似Oracle序列的方案

MySQL实现类似Oracle序列的方案

MySQL实现类似Oracle的序列Oracle一般使用序列(Sequence)来处理主键字段,而MySQL则提供了自增长(increment)来实现类似的目的;但在实际使用过程中发现,MySQL的自增长有诸多的弊端:不能控制步长、开始索引、是否循环等;若需要迁移数据库,则对于主键这块,也是个头大的...

mysql实现sequence功能的代码

mysql实现sequence功能的代码

mysql实现sequence功能1.建立sequence记录表CREATETABLE`sys_sequence`(`seq_name`varchar(50)CHARACTERSETlatin1COLLATElatin1_binNOTNULL,`min_value`int(11)NOTNULL,`m...

mysql中rpm方式安装的详解

mysql中rpm方式安装的详解

查看安装以及卸载#查看rpm-qa|grepmysql#卸载yum-yremovemysql-libs-5.1.66-2.el6_3.x86_641.centos7需要先卸载mariadb查看命令rpm-qa|grepmariadb安装包资源地址mysql下载地址:https://dev.mysql...

Mysql常用函数大全(分类汇总讲解)

Mysql常用函数大全(分类汇总讲解)

一、数学函数ABS(x)  返回x的绝对值BIN(x)  返回x的二进制(OCT返回八进制,HEX返回十六进制)CEILING(x)  返回大于x的最小整数值EXP(x)  返回值e(自然对数的底)的x次方FLOOR(x...

利用MySQL主从配置实现读写分离减轻数据库压力

利用MySQL主从配置实现读写分离减轻数据库压力

大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够。到了数据业务层、数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢失的话,后果更是不堪设想。这时候,我们会考虑如何减少数据库的联接,一方面采用优秀的代码框架,进行代码...

如何彻底删除mysql服务(清理注册表)详解

如何彻底删除mysql服务(清理注册表)详解

前言由于安装某个项目的执行文件,提示要卸载MySQL以便它自身MySQL安装,然后我禁用了MYSQL服务,再把这个文件夹删除后,发现还是提示请卸载MYSQL服务。--------------------------------------------------------------------禁...