MYSQL字段对比与优化
在mysql数据表的优化,可以在设计时进行一些字段与其他方面的优化。设计数据表的时候,尽可能使每一个字段设计为不为空的。这样在查询数据表的时候,速度会更快一些。
然后,在字段上面的一些对比,根据PHP的手册说明:
CHAR为固定长度:优点:查询速度会更快。缺点:数据冗余更大。因为固定长度的字段,如果你存储在数据表里的值或数据没有这么长,MYSQL会默认填写空字段来填充空出来的空间。查询速度方面的原因是,在查询字段的时候不需要去对比字段的长度。而是直接读取出来。
VARCHAR为可变长度:优点:数据冗余小。缺点:查询速度慢。
相关文档:
今天搭建mysql数据库,连接了半天,都提示10061错误,以为密码出了问题试了半天,压根连服务都连接不上,忙活了半个多小时,才发现是系统补丁打了之后出现的问题(kb967723)
于是网上找了一下资料
最近一个客户服务器的MYSQL频繁提示连接不上,修改了MYSQL的最大连接数还是这样,于是开始问万能的搜索引擎大人!终于在微软找到了 ......
不同数据库之间的语法差异还真不少~要崩溃了。
1.创建带自增列临时表:create TEMPORARY table t(id int AUTO_INCREMENT PRIMARY key, u_name varchar(50));--为什么必须要主键?!
向这个临时表中插入数据:insert into t values(null, 'zdy');--为什么一定要加null?!
2.把一张表的查询结果插入临时表:insert into t ......
1、外键的引用类型不一样,主键是int外键是char
2、找不到主表中 引用的列
3、主键和外键的字符编码不一致
4.还有要建立外键的话,要先建立索引。没有建立索引也会出错。
我的问题解决方案是在sql后面加上了如下句话,ok!成功导入脚本
ENGINE=MyISAM DEFAULT CHARSET=utf8;
charset对应的换成你的主键表的字符集 ......
1.linux下启动mysql的命令:
mysqladmin start
/ect/init.d/mysql start (前面为mysql的安装路径)
2.linux下重启mysql的命令:
mysqladmin restart
/ect/init.d/mysql restart (前面为mysql的安装路径)
3.linux下关闭mysql的命令:
mysqladmin shutdown
/ect/init.d/mysql&nbs ......