数据库论坛(论坛数据库出错,打不开论坛,请问该怎么做)
大家好,感谢邀请,今天来为大家分享一下数据库论坛的问题,以及和论坛数据库出错,打不开论坛,请问该怎么做的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!
论坛数据库出错,打不开论坛,请问该怎么做
提供下论坛地址,或者是图片,你这些文字这么纯碎怎么解决。
或者去官方的那个A&Q里面输入145,也就是你的错误编码,查看下解决方法。
============
有没有更改了数据库的密码。如果更改了数据库的密码会导致数据连接错误,所以才会这样的。如果真的修改了数据库密码的话就改回来。
PHP+MySQL数据库论坛简易通
校园论坛是校园网中不可缺少的部分之一虽然基于ASP+ACCESS的论坛使用简洁安装方便但MySQL数据库以它短小方便速度快免费等优点成为很多站点目前首选数据库加上PHP语言也具有可跨平台移植性高安全可靠快速高效的优点因此目前很多流行论坛程序都采用了PHP+MySQL相结合来开发不过对于我等菜鸟们来说在服务器上安装PHP+MySQL论坛可不像ASP+ACCESS那么简单只需要直接放到站点目录下即可运行因为大多数PHP+MySQL论坛在使用前都需要安装
如果你打算购买虚拟空间来运行PHP+MySQL论坛程序那么你首先得购买一个支持PHP+MySQL的空间一般的适合运行小型论坛(人左右同时在线)程序的虚拟空间每年最低费用一般元左右除此而外还得建立MySQL数据库创建用户名和密码才能顺利安装PHP+MySQL论坛有的虚拟空间商直接提供这些信息给你无需自己动手设置例如上海E动网的K虚拟主机在后台建立了名称为itlm的数据库后就自动创建了itlm_f itlm_r itlm_w三个用户(密码都是自己设定的)这样安装时就可以直接使用了
如果学校有自己的服务器(Windows系统)那么就按照下面的步骤一先设置好服务器的运行环境让服务器支持PHP+MySQL
服务器端软件安装
PHP+MySQL论坛程序在大多数情况下都是运行在Linux UNIX等系统下但是安装Linux UNIX系统再配置PHP+MySQL对于我等菜鸟们来说可不是想玩就可以玩起来的!这里笔者向大家推荐一款Win平台下的一款Web服务器软件 EasyAPM Server EasyAPM Server是Win/XP/系统下的Apache+PHP+MySQL运行环境快速集成安装套件只要一次安装就自动包含以下程序 Apache v(Win) PHP v(Win) Zend Optimizer v a(Win) MySQL v(Win) phpMyAdmin v pl用户无须修改任何配置文件对初学者来说是安装最方便最快速的一款WEB服务器平台!
第步从以下地址下载EasyAPM Server
// byshell net/Sofare/Catalog/
第步将下载的文件解压到服务器d:usr
第步在服务器上运行d:usrinstall bat安装Apache+PHP+MySQL集成套件这样几分钟之内就让你的服务器(或个人电脑)立刻变成了一台支持PHP+MySQL的服务器
第步建立MySQL数据库在服务器IE地址栏输入//localhost/phpmyadmin/使用phpMyAdmin来建立一个名为itlm的数据库
注意
()如果服务器原来已经安装IIS服务请在安装EasyAPM Server前停止服务或改变默认端口否则会无法正常安装
()EasyAPM Server安装后默认登录用户名: root密码: micronsky net进入后台后可以使用权限项来更新MySQL数据库的默认密码添加新的MySQL用户设置用户权限等操作这里我们新增了一个用户 itlm_f
()更多操作请查看EasyAPM Server内的说明文档
安装phpwind
免费个人版论坛程序
第步下载解压phpwind安装包从// phpwind/download php?action=do&&p= PWForums&&v=&&n=PHPWind_GBK_ zip下载PHPWind正式版(PHP+MySQL)高速论坛程序
第步上传phpwind程序文件如果使用的是虚拟主机只要用FTP软件将解压后的所有文件上传到网站根目录下确保在根目录下能看到install php就可以了!
如果是自己的服务器安装的EasyAPM Server只要先删除D:usr下除phpmyadmin文件夹(在线管理数据库用)外的所有文件然后将phpwind zip内的所有文件解压到D:usr下确保D:usr下能看到install php文件这些就是phpwind的论坛的安装程序文件
第步设置相关目录和文件的属性(服务器如果是Windows平台的此步可省略直接将相关文件或文件夹设置为可写即可)先确认以下目录或文件属性为()可写模式
data data/sql_config php attachment data/bbscache data/groupdb data/style _data template template/wind template/admin image/upload image/attach
PHP编程免费提供,内容来源于互联网,本文归原作者所有。论坛的数据库怎么设计
常用的论坛设计方法,总结如下:
一分割思想:
1数据库切分:用户库、主题库、回复库
2数据表水平切分:用户库1-n、主题库1-n、回复库1-n(比如按时间分)
3分布式数据库:每台计算机中都有DBMS的一份完整拷贝副本,并具有自己局部的数据库,位于不同地点的许多计算机通过网络互相连接,共同组成一个完整的、全局的大型数据库。
4论坛功能可以进行分隔,不同的服务器负责不同的功能
5用主从数据库,master是写, slave是读
6把内容与其它信息分开,好处就是可以让每个表的文件最小化,对数据库操作压力会减小,这样保证每张表数据量很小,操作速度会快,也可以在这里使用缓存
二索引:
针对是否建立索引有着一定的分歧:
我觉得建立索引还是很有必要的。理由如下:
1)建立索引可以加快检索速度,对于论坛读和写的比例相差很大,用户体验当然是读多写少,所以综合考虑还是要用索引,而且是加在常用的读关键字上。
2)索引之所以会降低更新的速度,是因为更新还包括对索引的更新,从更新帖子10万左右,这句话是说,我们可能对发帖标题,发帖内容,回复标题,回复内容这4个字段做更新。需要注意的是,这四个字段并不是用来建立表连接的字段,为了优化查询速度我们不会在这四个字段上建立索引,所以从这道题目出发,我们建立的索引不会影响更新帖子的性能。只要被索引的列(例如回复表的标题ID)不被频繁更新,即使索引所在地行的其它列被频繁update,索引也不会被更新从而产生性能消耗,一张表一天30万次的索引更新,因它引起的性能消耗小到即使数据库安装在奔腾3单核CPU下都能轻松承担下来。
3)对于更新的速度慢的问题,我们有解决的方法,你提交更新了后,前台可以让程序返回一个正确结果,后台开个线程异步慢慢跟新数据库就是了,反正更新成功的前提就是假设数据库连接永远正确并处于可靠状态。在数据库和用户之间建立一个缓冲区。(如,将更新的数据放到内存中,达到一定数量的时候再统一更新数据库。假如以100条为例,一旦内存中达到100条数据量将这100条数据统一入库。减少insert操作)
三缓冲:
读的时候的缓冲:缓存路由表
主题缓存表(这个取每个区的前面100条记录),一般来说负载最大的就是主题的第一页,所以缓存表是个小表。
另外使用hibernate,在数据库上面加了一层缓存。
生成静态页,缓存最热,最新的帖子。
对于经常更新的数据都设计成单独表,这样可以最大程度的利用hibernate缓存
缓存常用的数据和表,利用缓存来将经常被访问的帖子留在内存中,为每条缓存的记录添加一个访问时间,如果长时间没被访问就从缓存中删除掉,
避免内存过大,每次用户看帖的时候,首先检索缓存中时候有需要的帖子,没有的话再访问数据库,然后将数据库返回的帖子信息存储到缓存中。
写的时候的缓冲:数据库和用户之间建立缓存,将更新的数据放在内存中,异步操作的。所有的写贴操作放到一个队列然后批量执行插入数据库操作。
预估计的缓冲:假如用户第一次打开某标题,那将此标题的相关的前100条数据缓存到客户断。这样避开对数据库的直接查询,减少数据库压力。
四代码优化
1尽量避免表的连接约束通过代码来实现约束例如用户id的验证在用户登录时验证这样就可以把帖子表的用户id外键去掉这样就成了单表操作、查询而连接可以通过触发来实现这样最多是查询了3个表而不是连接中的笛卡尔笛卡尔积回复表的查询限定每次查询的记录数例如限定10条其它的通过点击触发来操作"注代码优化容易出现bug原因有些开发工具本身有优化"
五数据库性能调优
尽量用硬件来代替软件优化原则就是能用硬件的尽量用硬件比如磁盘阵列 RAID0有条件用RAID10加大内存.避免小表上建索引对论坛来说数据帖子和回复不是很重要可以定期删除一些垃圾帖子楼主说的几百万条记录的论坛对现在的数据库管理系统和计算机来说永不着刻意的优化,定期维护打包备份数据库就可以了
提高速度的关键:
1.建立合理的索引并在查询时充分利用;
2.避免使用关联,这样避免整表扫描;使用关联不如多次使用主键查询来的快;
3.一些处理的功能尽可能放到内存中来做,比如组织主题和回复;
4.海量缓存(使用静态页面也是个不错的做法)
5定期对表进行转储
END,本文到此结束,如果可以帮助到大家,还望关注本站哦!