存储引擎
对于我来说常用的存储引擎有:InnoDB和MyISAM
InnoDB:支持外键和事务,事务性表(如用户付款、用户权限)应该使用InnoDB作为存储引擎
MyISAM:不支持外键和事务,频繁读取(如select操作频繁)应该使用MyISAM作为存储引擎
show ENGINES;来查看支持哪些存储引擎
show table status from 数据库名;来查看数据库下的各表的详细信息,其中包括存储引擎
一个数据库下的各表的存储引擎可以是MyISAM和InnoDB混合的
创建用户系统表,并初始化一百万条测试数据
创建user_sys表,为注册用户的主要信息表,用户登录时涉及到事务,所以存储引擎为InnoDB,表结构如下图
因为用户名是不能重名的,所以为user_name字段设置唯一索引,这样在程序端插入新用户时就不用对用户名进行判断了
创建存储过程sp_initdb,实现向user_sys表中灌入一百万条测试数据,来模拟百万用户
BEGIN
#Routine body goes here...
declare num int DEFAULT 1;
while num<=1000000 DO
insert into user_sys(user_name,user_pwd) values(concat('user',num),