MySQL修改表结构及SQL性能优化
来源:互联网 发布:java 数据字典表设计 编辑:程序博客网 时间:2024/05/18 03:25
1、添加字段
alter table tablename add email varchar(30) not null;alter table tablename add id int unsigned not null auto_increment primary key;2、修改字段
alter table tablename modify colname varchar(10);//修改字段数据类型alter table tablename change colname newcolname varchar(20);//修改字段名3、删除字段
alter table tablename drop colname;
创建用户:
创建decorate用户对decorate库有操作权限 密码123456
grant select,insert,update,delete on decorate.* to decorate@"%" identified by "123456"
性能优化:
1.尽可能的将字段设置为NOT NULL。
2.有些字段使用ENUM而不是VARCHAR,比如“性别”,“国家”,“民族”,“状态”或“部门”。
3.永远为每张表设置一个ID,每张表都设置一个ID做为其主键,而且最好的是一个INT型的(推荐使用UNSIGNED),并设置上自动增加的AUTO_INCREMENT标志。
4.避免select * 这种方式,改用用字段名。
5.避免在WHERE子句中使用in,not in,or 或者having,使用 exist 和not exist代替 in和not in。
6.避免大规模排序,ORDER BY、GROUP BY、HAVING子句。
7.检查索引,为WHERE、JOIN中用到的字段加上索引,为搜索字段建索引。
不要在建立索引的字段上进行下列操作:
避免对索引字段进行计算操作
避免在索引字段上使用not,<>,!=
避免在索引列上使用IS NULL和IS NOT NULL
避免在索引列上出现数据类型转换
避免在索引字段上使用函数
避免建立索引的列中使用空值。
8.避免在JOIN、WHERE子句中使用计算。
9.避免在查询中使用%模糊匹配。
10. 当只要一行数据时使用LIMIT1,可以增加性能,这样数据库引擎会在找到一条数据后停止搜索,而不是继续往后查少下一条符合记录的数据。
如:"SELECT name,pass FROM user WHERE name = 'test'" 改为 "SELECT name,pass FROM user WHERE name = 'test' LIMIT 1"。
- MySQL修改表结构及SQL性能优化
- mysql数据库性能优化(包括SQL,表结构,索引,缓存)
- mysql数据库性能优化(包括SQL,表结构,索引,缓存)
- MYSQL性能优化--不停机分表,修改mysql表结构
- Mysql性能优化----SQL语句优化、索引优化、数据库结构优化、系统配置优化、服务器硬件优化
- MySQL 修改表结构性能问题
- MySQL 数据库性能优化之表结构
- MySQL 数据库性能优化之表结构
- 【SQL】MySQL性能优化
- mysql数据库性能优化(包括SQL、表结构、索引和缓存参数)
- mysql数据库性能优化(包括SQL,表结构,索引,缓存)
- mysql数据库性能优化(包括SQL、表结构、索引和缓存参数)
- mysql数据库性能优化(包括SQL,表结构,索引,缓存)
- MySql 数据库 sql 语句 修改 表结构
- MySQL 数据库性能优化——表结构优化
- MySQL 数据库性能优化之表结构优化
- MySQL 数据库性能优化之表结构优化
- MySQL数据库性能优化之表结构优化
- 判断某一区域是否为空
- 【Leetcode】之Add Binary
- 图书馆管理系统
- 【2016.5.21普及组模拟】约数国王(A king)
- Python DM Learning Intro
- MySQL修改表结构及SQL性能优化
- nginx-tomcat负载均衡redis-session共享,静态资源分离
- 通知栏Notification使用
- mysql 默认引擎innodb 初探(三)
- 走近XML(1)
- php判断一个字符串包含另一个字符串
- 六个可以替代传统事务解决并发问题的建议
- Ubuntu 16.04 LTS直接双击安装deb包失败的解决方法
- Scroller 实现控件缓慢平移的效果