1 Star 0 Fork 0

曹庆光 / about-mysql

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

about-mysql

命令行快捷键

ctrl+A  跳转到行首
ctrl+E  跳转的行末

ctrl+y 恢复
ctrl+w 删除单词
ctrl+u 删除之前
ctrl+k 删除之后

修复表数据3种方式

1.check table <table_name>;
2.repair table <table_name>;
3.alter table <table_name> engine=innodb;

查看索引

show indexes from <table_name>

查看执行计划

explain <my_sql>

创建db

CREATE DATABASE [IF NOT EXISTS] <数据库名>
[[DEFAULT] CHARACTER SET <字符集名>] 
[[DEFAULT] COLLATE <校对规则名>];


show databases;  # 查看当前所有的数据库
show create database <my_db>; #查看某个数据库



ex:
create database if not exists mytest default CHARACTER SET utf8  DEFAULT COLLATE utf8_chinese_ci;

创建表

create table <table_name> (
id int not null,
name varchar(20) not null default '' comment '名称',
addr varchar(20) not null default '' comment '地址',
...
primary key (id),
key idx_name(name,addr)
) engine=innodb comment '我的表';


show tables;
show create table <mytable>;
show full columns from <mytable>;
show indexes from <mytable>;

alter table <table> comment 'mytable';
alter table <table> modify column id int not null comment 'myId';

常用的语法格式如下:
ALTER TABLE <表名> [修改选项]

修改选项的语法格式如下:
{ ADD COLUMN <列名> <类型>
| CHANGE COLUMN <旧列名> <新列名> <新列类型>
| ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT }
| MODIFY COLUMN <列名> <类型>
| DROP COLUMN <列名>
| RENAME TO <新表名> }

[具体可参考](http://c.biancheng.net/view/2433.html)


alter table <table> add primary key (id);
alter table <table> add unique key idx_name_addr(name,addr);
alter table <table> add key idx_name_addr(name,addr);

alter table <table> drop primary key(id);
alter table <table> drop key idx_name;

关于索引的优化

高频使用的 区分度又很低的字段 可以加索引

如果某个查询sql 没有该字段的过滤条件可以变相的绕过 select * form where sex in ('m','f')

对于需要limit offset 很多行的化 可以想办法绕过 (延迟关联)

select * from tab inner join (select id from tab where index_filed>val limit 10000,10) as s using(id);

针对范围查找的优化

col between var1 and var2
col > var1 and col <var2
any all

最好转换为等值 方便后边的查询条件继续使用组合索引
col in (var1,var...,var2)

状态查看

show status;
show status like '';
show full processlist;

空文件

简介

关于数据库相关的东东 展开 收起
Java
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/cqgvip/about-mysql.git
git@gitee.com:cqgvip/about-mysql.git
cqgvip
about-mysql
about-mysql
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891