首页 > 代码库 > mysql 常用
mysql 常用
1.复制表
create table t2 like t1;
insert into t2 select * from t1;
2.索引
a. ALTER TABLE 用来创建普通索引,UNIQUE 索引和 PRIMARY KEY 索引
ALTER TABLE table_name ADD INDEX index_name(column_list)
ALTER TABLE table_name ADD UNIQUE(column_list)
ALTER TABLE table_name ADD PRIMARY KEY (column_list)
b. alter table drop 删除索引
ALTER TABLE table_name DROP INDEX index_name
ALTER TABLE table_name DROP PRIMARY
c. 查看索引
show index from table_name;
3.视图
creatr view v_t1 as select * from t1 where id>3 and id<10;
drop view v_t1; //删除
4.内置函数
a.RAND() 随机取数据
select * from t1 order by rand();
select * from t1 order by rand() limit 3; //随机取三条数据从t1表中
select * from t1 where id<10 order by rand() limit 3;
b.UNIX_TIMESTAMP() 返回时间邮戳
select unix_timestamp()
5.MYSQL 优化
a. 使用 show status + SQL 语句 了解数据库的各种状态
show session status...... //表示当前登陆后 (默认)
show global status......//表示自数据库启动至今
例子:
show global status like "com_select%"; //从数据库启动以来的查询数
show global status like "com_insert%"; //从数据库启动以来的插入数量
show global status like "com_update%"; //从数据库启动以来的更新数量
show global status like "com_delete%"; //从数据库启动以来的删除数量
其他选项:
connections //连接 mysql 的 数量
Uptime //已经工作的秒数
Slow_queries //慢查询的次数
show variables like ‘%slow%‘; //查询慢查询日志功能是否开启
show_query_log //功能是否开启
slow_query_log_file //文件的保存位置
show variables like ‘%long%‘; //查询慢查询定义的时间 默认为10秒
b.解析sql 语句
desc .....
explain ....