wordpress 文章在数据库(wordpress数据库在哪里)

在当今这个信息爆炸的时代,WordPress已经成为全球最受欢迎的博客平台和内容管理系统。无论是个人博客还是企业网站,WordPress都以其强大的功能和易用性受到广大用户的青睐。你是否想过,这些精彩的文章是如何在数据库中存储的呢?今天,我们就来探讨一下WordPress文章在数据库中的存储与优化。

一、WordPress文章在数据库中的存储

WordPress文章在数据库中的存储主要分为以下几个部分:

1. 基本信息表(wp_posts)

该表存储了文章的基本信息,包括文章ID、标题、内容、作者、发布时间等。以下是wp_posts表的部分字段:

字段名 类型 说明
ID bigint(20) 文章的唯一标识符
post_author bigint(20) 文章作者的ID
post_date datetime 文章的发布时间
post_content longtext 文章的内容
post_title varchar(200) 文章的标题
post_status varchar(20) 文章的状态,如“publish”、“draft”等
comment_count mediumint(8) 文章的评论数量

2. 分类信息表(wp_terms)

该表存储了文章的分类信息,包括分类ID、分类名称、分类描述等。以下是wp_terms表的部分字段:

字段名 类型 说明
term_id bigint(20) 分类ID
name varchar(200) 分类名称
slug varchar(200) 分类的缩写名称
term_group mediumint(8) 分类组ID
term_taxonomy_id bigint(20) 分类税号的ID
description longtext 分类描述

3. 分类关系表(wp_term_relationships)

该表存储了文章与分类之间的关系,包括文章ID、分类ID等。以下是wp_term_relationships表的部分字段:

字段名 类型 说明
object_id bigint(20) 文章ID
term_taxonomy_id bigint(20) 分类税号的ID
term_order int(11) 分类排序

4. 标签信息表(wp_terms)

该表存储了文章的标签信息,与分类信息表结构相同。以下是wp_terms表的部分字段:

字段名 类型 说明
term_id bigint(20) 标签ID
name varchar(200) 标签名称
slug varchar(200) 标签的缩写名称
term_group mediumint(8) 标签组ID
term_taxonomy_id bigint(20) 标签税号的ID
description longtext 标签描述

5. 标签关系表(wp_term_relationships)

该表存储了文章与标签之间的关系,与分类关系表结构相同。以下是wp_term_relationships表的部分字段:

字段名 类型 说明
object_id bigint(20) 文章ID
term_taxonomy_id bigint(20) 标签税号的ID
term_order int(11) 标签排序

二、WordPress文章在数据库中的优化

WordPress文章在数据库中的存储虽然已经非常高效,但在实际使用过程中,我们仍然可以对其进行优化,以提高网站的运行速度和用户体验。

1. 定期清理垃圾数据

随着时间的推移,数据库中会积累大量的垃圾数据,如未审核的评论、已删除的文章等。定期清理这些垃圾数据可以释放数据库空间,提高数据库的运行效率。

2. 优化数据库结构

对于一些大型网站,数据库结构可能不够合理,导致查询效率低下。在这种情况下,我们可以通过以下方法优化数据库结构:

* 建立索引:为经常查询的字段建立索引,如文章标题、分类ID、标签ID等。

* 拆分表:将数据量较大的表拆分成多个小表,降低单个表的存储压力。

* 调整字段类型:将不适合的字段类型进行调整,如将int(11)改为int(10)。

3. 使用缓存

WordPress提供了多种缓存插件,如W3 Total Cache、WP Super Cache等。通过使用缓存,可以将缓存到服务器端,减少数据库查询次数,提高网站访问速度。

4. 优化SQL语句

在编写SQL语句时,要注意以下几点:

* 避免使用SELECT *:只选择需要的字段,避免查询无用的数据。

* 使用LIMIT语句:限制查询结果的数量,避免一次性查询过多数据。

* 使用JOIN语句:合理使用JOIN语句,避免多次查询。

三、总结

WordPress文章在数据库中的存储与优化是保证网站稳定性和性能的关键。通过了解WordPress文章在数据库中的存储结构,以及采取相应的优化措施,我们可以提高网站的运行速度和用户体验。希望本文能对你有所帮助!

wordpress 怎样减少数据库读取量

#1,若您的WordPress版本为2.3及以前,可采用如下方法令系统自动缓存内部调用函数,而完全不用担心缓存对系统交互性的影响(如延迟等)。

Step1:在WordPress安装目录下的wp-content文件夹下创建名为cache的目录,属性设置为755,如下图:

Step2:打开WordPress安装根目录下的wp-config.php文件,在其尾端加入define('ENABLE_CACHE', true);,如下图:

保存后上传更新文件,刷新页面后,可发现新创建的cache文件夹中生成了如下文件:

缓存的是一些不需要经常修改的文件,如分类名称、存档日期等。该缓存方法名为object缓存,并不缓存网页,而传统的wp-cache调用是缓存网页的,会影响网页的交互实时性,使用户体验些许变差。

#2,若您的WordPress版本为2.5及以上版本,由于新版WP取消了object缓存功能可以使用将所有待查数据都存入数据库options表(一般的默认名称为wp_options)的方法,大幅度减少数据库查询次数。ThinkAgain的解释如下:

默认WP有10个数据表,wp_posts和comments主要存储文章内容和评论,

其它的几个包括term等存储了目录和标签等等。这里不细谈。wp_options用来存储Wordpress以及插件运行时所涉及的配置等。且WP会在

运行时自动读取该表的内容。换句话说,因为WP已经预读这部分内容,所以直接调用wp_options内的数据是不会产生数据库查询的。()

方法:假如要缓存的是分类名称调用表单,则写functions.php如下代码:

function cache_category(){

$cached= get_option('multicolor_cache_category');

if($cached){

echo$cached;

}else{

$cached= cache_collapsible_list_cats();

echo”Update cache”;

echo$cached;

}

}

add_action('publish_post','cache_collapsible_list_cats');

当然,这显得很复杂,不过ThinkAgain说,WP2.6也是可以使用object自动缓存功能的,请等待他更新的方法。

#3,由于WordPress的内部永久链接调用函数为了追求老版插件的最大兼容性所以较啰嗦,比较耗费查询次数,可在functions.php写入如下代码,大幅度减少查询次数(均适用)

function revised_permalink($post,$leavename=false){

$rewritecode= array(

'%year%',

'%monthnum%',

'%day%',

'%hour%',

'%minute%',

'%second%',

$leavename?'':'%postname%',

'%post_id%',

'%category%',

'%author%',

$leavename?'':'%pagename%',

);

if( empty($post->ID)) return FALSE;

if($post->post_type=='page')

return get_page_link($post->ID,$leavename);

elseif($post->post_type=='attachment')

return get_attachment_link($post->ID);

$permalink= get_option('permalink_structure');

if(''!=$permalink&&!in_array($post->post_status, array('draft','pending'))){

$unixtime= strtotime($post->post_date);

$category='';

if( strpos($permalink,'%category%')!== false){

$cats= get_the_category($post->ID);

if($cats)

usort($cats,'_usort_terms_by_ID');// order by ID

$category=$cats[0]->slug;

if($parent=$cats[0]->parent)

$category= get_category_parents($parent, FALSE,'/', TRUE).$category;

// show default category in permalinks, without

// having to assign it explicitly

if( empty($category)){

$default_category= get_category( get_option('default_category'));

$category= is_wp_error($default_category)?'':$default_category->slug;

}

}

$author='';

if( strpos($permalink,'%author%')!== false){

$authordata= get_userdata($post->post_author);

$author=$authordata->user_nicename;

}

$date= explode(“”,date('Y m d H i s',$unixtime));

$rewritereplace=

array(

$date[0],

$date[1],

$date[2],

$date[3],

$date[4],

$date[5],

$post->post_name,

$post->ID,

$category,

$author,

$post->post_name,

);

$permalink= get_option('home'). str_replace($rewritecode,$rewritereplace,$permalink);

$permalink= user_trailingslashit($permalink,'single');

return apply_filters('post_link',$permalink,$post);

} else{// if they're not using the fancy permalink option

$permalink= get_option('home').'/?p='.$post->ID;

return apply_filters('post_link',$permalink,$post);

}

}

点击下面的链接下载修改好的文件,请解压后上传或粘贴到您原来的文件中。此方法文章页查询次数至少可降低10。

注意:如果您原来的插件有诸如下面的代码,并且您的永久链接方式为postname而不是postid,请修改

$sql=”SELECT ID, post_title, comment_count,post_date, post_content FROM$tableposts WHERE post_status='publish'”;

$sql=”SELECT ID, post_name, post_title,

comment_count,post_date, post_content FROM$tableposts WHERE

post_status='publish'”;

至此您的数据库查询次数将减小为个位数,繁忙时访问速度提高较显著,速度应当与直接生成静态文件时的情况差距不大,但互动性丝毫不减。

WordPress网站源码怎么上传,上传后怎么设置数据库和访问网站

1、首先要有一个服务器或者空间、一个域名。

2、把服务器的DNS绑定域名;

3、下载一个FTP工具,在FTP工具登陆服务器,输入服务器ip、账号、密码、端口号;

4、登陆成功后,用FTP把WordPress网站源码上传到服务器;

5、上传完成后,在浏览器中打开域名,会出现安装WordPress的界面,输入系统管理员账号密码、输入数据库的账号密码,会自动配置完成。配置完成之后就可以正常访问你的网站了。

如何将WordPress数据自动备份到本地

TAG:WordPress

Dropbox在国内已被墙,第一次注册和安装Dropbox客户端时需要翻(—敏感词过滤分割线—)墙,下载客户端之后不使用代理也可以正常接收同步备份文件

使用wordpress备份插件不仅可以备份wordpress数据库,还可以备份图片、主题模板等文件。同时wordpress备份插件可以定时将数据作为附件自动备份到自己的email邮箱,或者进入后台直接手工下载到本地电脑。但是如何自动将wordpress数据库文件自定备份到本地电脑呢?毕竟下载到本地电脑会让人比较放心。直接使用可以发送wp博客数据库备份到你的Dropbox帐户的Wordpress插件,或者wp插件再结合使用Dropbox即可实现这种功能,最后通过Dropbox自动同步备份文件到你的本地电脑。

WordPress备份插件

首先介绍几款相关的Wordpress备份插件:

wp-db-backup备份插件:wp-db-backup备份插件是wordpress官方网站上最热门的数据库备份插件,使用起来也非常简单,下载安装该插件并启用后跳转到Dashboard-》Tool-》Backup设置数据库表的备份选项即可,可选:

1、备份文件到服务器

2、下载到本地电脑

3、Email备份到邮箱

还可以选择自动定时备份到你指定的email邮箱,设置每小时、每天、每两天、每周定时备份博客数据库均可。wp-db-backup会在wp-content目录下新建一个以backup开头的随机名称作为备份文件保存的目录,随机数字名称在一定程度上使备份文件更加安全。

另外一个类似的wordpress博客备份插件是wp-dbmanager,wp-dbmanager备份插件也是一个相当热门的wordpress插件,不仅可以自动定时备份,还可以直接在wordpress后台导入数据库备份文件、数据库修复、优化、恢复、删除、清空等数据库操作。

不过上面两个wordpress备份插件定时备份只能发送数据库备份文件到email邮箱,不能直接发送到你的dropbox账户。所以这里再介绍一个插件wp-time-machine,wp-time-machine备份插件其实也是一个非常不错的插件,安装并启用该插件后,不仅可以备份数据库文件、还可以备份uploads目录上传的图片等所有wp-content中的文件(如wordpress主题)、.htaccess文件、数据库恢复说明。最关键的是它可以将这些备份文件发送到你的远程账户,包括Dropbox、Amazon’s AWS S3、远程FTP服务器。但是wp-time-machine有一个致命的缺点是,只要你的wordpress博客启用了这个插件,任何访客访问这个地址:

都会在wp-content目录下生成那些备份文件,而且默认的备份文件名称都是一样的,比如wpTimeMachine-data-files.sql,因此任何人都可以通过浏览器在这个地址下载到你的数据库备份文件。wp-time-machine备份插件作者提示将上面生成网址中的generate=1改为clear=1,使用curl url自动定时执行备份计划任务时,就不会在wp-content目录下生成备份文件。许多介绍该插件使用方法的中文文章也只提示在wordpress后台点击了该插件的备份操作之后,要记得删除这些备份文件,但是却都没有提示这个地址会被任何人访问到。因此为了你的wordpress博客安全,强烈建议不要使用该插件,也许哪一天插件作者更新了这个安全漏洞之后,可以考虑启用这个插件。

如何将wordpress备份文件发送到dropbox

既然wp-time-machine不能用,那么如何将wordpress博客备份文件发送到dropbox呢?当然还是有办法的,比如利用wp-db-backup备份插件,我们只要将插件自动定时发送到邮箱的email附件上传到dropbox帐户就可以了。Send to Dropbox程序就是一款这样的非常好的dropbox app应用程序。

登陆Dropbox帐户后访问,允许send to dropbox访问dropbox帐户,通过后在dropbox帐户my app中会多出一个send to dropbox。同时sendtodropbox.com会给你提供一个***@sendtodropbox.com的email邮箱地址。这个app通过这个唯一的email ID发送附件。

The app‘Send To Dropbox’ would like to connect with your Dropbox.

• Please make sure you trust this app before proceeding.

• You can always remove this app by visiting the Apps page.

• You‘re currently logged in as****@gmail.com. If you meant to connect。

TAG:WordPress

如果自动接收wordpress数据库备份文件的是Gmail邮箱,在Gmail邮箱中就可以在过滤器中将所有带有附件的邮件转发到以上这个地址。Gmail自动转发需要验证因此还要进行一些操作dropbox才能顺利收到作为email附件的备份插件。下面是几个操作步骤:

1.创建Gmail过滤器:进入接收数据库备份文件的Google gmail邮箱,创建一个接收邮件过滤器filter:点击右上方的settings-》-filters》create filters-》输入过滤条件:

2.添加转发地址:

3.验证转发地址,将最开始sendtodropbox.com给的email地址加入验证。

4.点击下一步,一般几分钟之内,你的Dropbox帐户就会收到一个包含gmail发送的转发email地址验证码的txt文件了。需要注意的是在点击下一步,

必须在send to dropbox设置中勾选include html copy或include text copy选项,否则是收不到验证码txt文档的。

另外一个需要注意的是在gmail常规设置镇南关,需要Gmail界面语言改为English,否则收到的只是乱码字符的txt文件(以上中文界面图片只作参考)。

5.在Gmail中输入txt文档中的验证码。

6.在过滤器中添加转发email地址。

7.点击“create filter”。

WordPress后台设置转发到Dropbox

上面的步骤需要通过Gmail作为中介,更简单的方法是在wordpress管理后台,直接设置wp-db-backup备份插件选项。将定时备份邮箱设置为sendtodropbox给的唯一邮箱地址。

现在所有定时执行生成的wordpress备份文件都会自动发送到你的Dropbox账户中了,通过Dropbox自动同步到本地电脑,就啥事都不用做了。Wordpress备份插件(wp-db-backup)+Dropbox+SendtoDropbox(+Gmail)就是绝对的懒人超级组合了。

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享