-
导入数据库的注意事项:
直接使用Navicat导入会发现数据库内容是空的, 所以需要使用命令导入.
先将下载的数据库文件sakila-data.sql和sakila-schema.sql使用FileZilla长传到虚拟机的/home目录下, 然后使用命令导入:
source /home/sakila-schema.sql; source /home/sakila-data.sql;
注意, 一定要先导入schema, 后导入data.
导入成功后就可以正常使用了.
查看全部 -
mysql中只能通过分析慢查日志配置pt-index-usage工具进行索引使用情况的分析,看哪些索引不常用,从而删除;
查看全部 -
create index idx_paydate on payment(payment_date);查看全部
-
建立联合索引:离散度大的放在前面;
离散度查询: select count(distinct custom_id),count(distinct staff_id) from table;
count的数值越大说明离散度越大,则建立联合索引就放前面;index(customer_id,staff_id);
查看全部 -
using()用于两张表的join查询,要求using()指定的列在两个表中均存在,并使用之用于join的条件;例如: select a.*, b.* from a left join b using(colA);
group by 的列尽量要使用在有索引的列上,否则就会使用临时表和文件
查看全部 -
不错查看全部
-
如何分析SQL查询:
explain返回各列的含义
table:显示这一行的数据是关于哪张表的
type:这是重要的列,显示连接使用了何种类型。从最好的到最差的连接类型为const/eq_reg/ref/range/index和ALL
possiable_keys:显示可能应用在这张表中的索引。如果为空,没有可能的索引。
key:实际使用的索引。如果为Null,则没有使用索引。
key_len:使用的索引的长度,在不损失精确性的情况下,长度越短越好。
ref:显示索引的哪一列被使用了,如果可能的话,是一个常数。
rows:MYSQL认为必须检查的用来返回请求数据的行数。
查看全部 -
从哪几个方面进行数据库优化
硬件
系统配置
数据库表结构
SQL 及 索引
查看全部 -
利用bigint来存储IP地址,利用INET_ATON(),INET_NTOA()来转换。查看全部
-
优化后的group by 查询查看全部
-
优化前的group by 查询查看全部
-
数据库优化
查看全部 -
如何选择合适的列建立索引?
在where从句,group by 从句,order by从句,on从句中出现的列
索引字段越小越好
离散度大的列放到联合索引的前面
查看全部 -
select a.table_schema as '数据名', a.table_name as '表名', a.index_name as '索引1', b.index_name as '索引2', a.column_name as '重复列名' from statistics a join statistics b on a.table_schema = b.table_schema and a.table_name = b.table_name and a.seq_in_index = b.seq_in_index and a.column_name = b.column_name where a.seq_in_index = 1 and a.index_name <> b.index_name查看全部
-
什么时候表信息统计,影响到索引查看全部
举报