参考:
http://www.php100.com/html/webkaifa/database/Mysql/2009/0910/3288.html
1:使用SHOW语句找出在服务器上当前存在什么数据库:
mysql> SHOW DATABASES;
2:2、创建一个数据库MYSQLDATA
mysql> CREATE DATABASE MYSQLDATA;
3:选择你所创建的数据库
mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操作成功!)
4:查看现在的数据库中存在什么表
mysql> SHOW TABLES;
5:创建一个数据库表
mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
6:显示表的结构:
mysql> DESCRIBE MYTABLE;
7:往表中加入记录
mysql> insert into MYTABLE values (”hyq”,”M”);
8:用文本方式将数据装入数据库表中(例如D:/mysql.txt)
mysql> LOAD DATA LOCAL INFILE “D:/mysql.txt” INTO TABLE MYTABLE;
9:导入.sql文件命令(例如D:/mysql.sql)
mysql>use database;
mysql>source d:/mysql.sql;
10:删除表
mysql>drop TABLE MYTABLE;
11:清空表
mysql>delete from MYTABLE;
12:更新表中数据
mysql>update MYTABLE set sex=”f” where name=’hyq’;
正则和非正则化:
正则化:消除冗余
存储引擎:
MyISAM、InnoDB、Memory、Merge、Blackhole、CSV
数据切分:
水平切分、垂直切分和联合切分
SQL规范
1、禁止使用select *操作,尤其象在mcs_access_log表中。
2、在查一个表之前,需要先看下这个表的记录数,根据纪录数来判断在查询的时候是否要加limit。
3、查询的时候多用in,少用或不用or。
4、创建联合索引后,再创建联合索引中的第一个字段的单独索引是没有意义的。
5、对于text或者长varchar型的列需要建立前缀索引
6、安装完mysql后删除空用户。
7、权限分配时禁止grant 用户@%。
SQL建议
1、多用load data infile,少用insert,用的时候也是批量insert
2、避免使用NULL字段(很难进行查询优化,该列加索引需要额外的空间,该列复合索引无效)
3、不在索引列进行数学或者函数运算(无法使用索引,全表扫描)
4、like模糊查询时避免like ‘%dai’
5、从线上大表导数时,需要分批进行导,比如1张1亿的表,可以每次分500万进行导,不要一次导出。
6、索引并不是越多越好,适量