数据库
微光丶
行动π
展开
-
乐观锁和悲观锁
数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。无论是悲观锁还是乐观锁,都是人们定义出来的概念,可以认为是一种思想。其实不仅仅是数据库系统中有乐观锁和悲观锁的概念,像memcache、hibernate、tair等都有类似的概念。...原创 2019-03-08 16:01:36 · 241 阅读 · 0 评论 -
主从数据库配置(复制)
※ 前提:主从数据库版本一致!!!主服务器部分:1.修改数据库配置#vi /etc/mysql/my.cnf [mysqld] log-bin=mysql-bin #[必须]启用二进制日志 server-id=1 #[必须]服务器唯一ID,默认是1,一般取IP最后一段2.检查mysql是否允许连接 这一步...原创 2019-05-20 18:24:05 · 384 阅读 · 0 评论 -
索引优化
巧妙的使用 Explain看一条 SQL 语句的性能,可以使用 explain 关键字查看语句性能,这里说一下其中的 type 字段的部分含义:all,即全表扫描,说明这个 SQL 语句没有使用到索引,有可能是表本身没有创建索引,也可能是因为 SQL 语句导致没有使用索引 range,说明使用的是有范围的索引扫描,性能优于 index index,这里说明使用了索引,这种情况下,如果 ...原创 2019-03-19 17:05:23 · 244 阅读 · 0 评论 -
数据库错误日志
1.进入 mysql 安装目录进入 data 目录(该目录存储的是数据库的数据)cd /usr/local/mysql/data2.查找下包含err的日志文件root@123:/usr/local/mysql/data# lsauto.cnf ib_logfile0 julyedu mysql-bin.000006 mysql-bin.0...原创 2019-03-19 17:04:11 · 1364 阅读 · 0 评论 -
数据库导入和导出
一、导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径):1、导出数据和表结构: mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql #/usr/local/mysql/bin/ mysqldump -uroot -p abc > abc.sql敲回车后会提示输入密码2、只导出表结构mysqldump ...原创 2019-03-19 17:02:44 · 3062 阅读 · 2 评论 -
单列索引和多列索引
1.单列索引所有的MySQL列类型能被索引。在相关的列上的使用索引是改进SELECT操作性能的最好方法。一个表最多可有16个索引。最大索引长度是256个字节,尽管这可以在编译MySQL时被改变。对于CHAR和VARCHAR列,你可以索引列的前缀。这更快并且比索引整个列需要较少的磁盘空间。在CREATE TABLE语句中索引列前缀的语法看起来像这样: KEY index_n...原创 2019-03-19 17:01:45 · 2590 阅读 · 2 评论 -
B-tree索引和hash索引的区别
hash 索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引。可 能很多人又有疑问了,既然 Hash 索引的效率要比 B-Tree 高很多,为什么大家不都用 Hash 索引而还要使用 B-Tree 索引呢?任何事物都是有两面性的,Hash 索引...原创 2019-03-19 16:58:58 · 430 阅读 · 0 评论 -
索引的分类以及如果创建索引
从数据结构角度1、B+树索引(O(log(n)))关于B+树索引,可以参考 MySQL索引背后的数据结构及算法原理2、hash索引a 仅仅能满足"=","IN"和"<=>"查询,不能使用范围查询b 其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-T...原创 2019-03-19 16:57:31 · 661 阅读 · 0 评论 -
了解索引
举例我们通过一个简单的例子来开始教程,解释为什么我们需要数据库索引。假设我们有一个数据库表 Employee, 这个表有三个字段(列)分别是 Employee_Name、Employee_Age 和Employee_Address。假设表Employee 有上千行数据。现在假设我们要从这个表中查找出所有名字是‘Jesus’的雇员信息。我们决定使用下面的查询语句:SELECT * FR...原创 2019-03-19 16:53:31 · 230 阅读 · 0 评论 -
单机事务
事务简介事物的本质 => 锁和并发的结合体优势:容易理解劣势:性能一般容易理解的模型性能不好,性能好的模型都不容易理解。ACID保证事务完整性bob给smith转1000元钱,要么钱在bob这,要么在smith这,不会让其他线程看到bob和smith的钱都为0的情况。事务 - 单个事务单元建立一个基于GMT_Modified的索引读一行记录写一行记录,同...原创 2019-03-19 16:42:45 · 468 阅读 · 0 评论 -
MyISAM与InnoDB区别
什么是MyISAM?MyISAM是MySQL关系数据库管理系统的默认储存引擎(5.5之前)。这种MySQL表存储结构从旧的ISAM代码扩展 出许多有用的功能。在新版本的MySQL中,InnoDB引擎由于其对事务,参照完整性,以及更高的并发性等优点开始广泛的取代MyISAM。每一个MyISAM表都对应于硬盘上的三个文件。这三个文件有一样的文件名,但是有不同的扩展名以指示其类型用途:.frm文件...原创 2019-03-08 16:03:39 · 238 阅读 · 0 评论 -
最全mysql语句大全
1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'--- 开...原创 2019-08-20 16:23:06 · 2644 阅读 · 0 评论