分类目录归档:mysql

mysql 锁分类


mysql 锁的分类

MyISAM 和 memory 表级锁 ,innodb 支持行级锁也支持表级锁,默认行级锁,BDB 页面锁,也支持表级锁 按照数据类型来分 读锁(共享锁):针对同一份数据,多个读操作也可以同时进行不会互相影响 写锁(排他锁):当前写操作没有完成前,阻断其他写锁和杜所 按照数据操作粒度分: 表级锁:开销小,加锁快,不会出现死锁,锁粒度大,发生锁冲突的概率最高,并发度最低 行级锁:开销大,加锁慢,会出现死锁,锁粒度最小,发生锁冲突的概率最低,并发度也最高 页面锁:开销和加锁时间

Read more

mysql


mysql 构成

连接池,SQL 接口,解析器,优化器,缓存,存储引擎等组成,分成,连接层,服务处,引擎层和文件系统层

mysql 物理文件

日志文件包括,错误文件 error log ,二进制日志文件 bin log ,中继日志 relay log 满查询日志 slow log 1. show variables like 'log_error'; 2. show variables like 'slow_query_log_file'; 3. bin log 日志文件 需要在my.cnf 配置 log-bin =/var/log/mysql-bin/bin.log serv

Read more

mysql 索引视图 存储过程


mysql 索引

索引可以提高查询速度,常见有的索引有 主键索引,唯一索引,普通索引 1. 主键索引 primary key 唯一索引,每张表只有一个主键,用来标识数据表中的每一条记录 2. 唯一索引 unique kye ,索引列的所有值都只能出现一次,必须唯一 3. 普通索引 index,常见索引,加快对数据的访问速度

mysql 将一个表的索引都保存在同一个索引文件中,如果对数据进行增删改操作,mysql都会自动更新索引。

DDL 操作

alter table demo1 add primary key (did);//主键索引
create unique index  索引名 On 

Read more

mysql 多表,外键和数据库设计


创建外键约束

mysql 创建表的外键输入举例

/*创建department,employee ,department 一对多 employee */
/*创建department*/
 create table department(
     id bigint primary key auto_increment,
     dep_name varchar(200),
     dep_location varchar(200)
 );

/*创建employee*/
create table employee(
    id bigint primary key auto_incre

Read more

mysql 单表外键和事务


聚合函数

作用:将一列数据作为一个整体,进行纵向的计算

常用的聚合函数有: 1. count(字段),统计记录数, 2. sum(字段)求和操作, 3. max(字段)最大值 4. min(字段) 最小值 5. avg(字段) 平均值

语法格式:select 聚合函数(字段名)from 表名 [where 条件]

count(1),count(*),count(字段)的区别

count(1) 和count()都是用于计算表中记录的数量,不同的是 count()表示计算表中的所有记录的数量,不考虑记录中的具体值 count(1)表示计算表中的所有非空的数量,对每条记录都会计算。 count

Read more