香港独立IP空间
香港php空间
美国php空间
域名注册

我们都知道,除了纯静态的网站程序之外,数据库对一个程序来说都是必不可少的。比如discuz论坛,数据库用来存放帖子内容、会员信息;wordpress,数据库用来存放文章内容、会员留言等等。在php虚拟主机建站的过程中,数据库导入导出的操作很多时候是必要的,比如备份网站数据,修改数据等。但是今天无忧主机小编就遇到一个客户,在导入数据库之后,访问网站出现500错误,如下图所示:

mysql 2015 10 22 1 300x44 数据库导入报错引出的结构优化建议

在检查了根目录的.htaccess文件以及权限问题无果之后,小编把关注点转向了数据库。既然是导入数据库之后发生的问题,会不会是数据库中某个表的问题呢?

由于客户本地有数据库导入之前的备份,小编让客户把数据库恢复到之前的状态。果然恢复之后,网站可以正常访问。那么可以确定,是后来添加的数据库的问题了。

在仔细询问了客户数据库导入的详细情况后,小编得知了这样一个信息:客户导入的数据库文件有几万条。而经过登陆客户数据库查看,发现200M的数据库中,竟然有一张表达到了60M!单表60M,难怪访问会报错了。

涉及到网站数据调用,如果单表数据太大,没有科学的索引,调用就会变得很困难,甚至超时。举个简单的例子,比如我知道一个学生的姓名,想要知道他现在在学校的那个地方,那无疑是大海捞针;如果建立科学的索引,比如我知道这个人在那个年级,哪个班,甚至座位几排几号,那要找到他就非常简单了。所以如果要网站能够正常的访问,可以多建立几张表,表和表之间建立科学的索引关系,那数据加载起来就有个方向,访问也不会超时了。

无忧主机相关文章推荐阅读:
建站经验:SQL语句快速删除重复内容之我见
由数据库导入报错引发的关于数据库编码格式UTF8MB4问题思考
本地坏境或者服务器环境下PHPMYADMIN出现始终正在加载问题的解决方法

本文地址:http://www.51php.com/mysql/20430.html

喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^

阅读本文的人还阅读: