Articles of 索引

PostgreSQL:性能下降由于索引bloatper

我正在CentOS 4.4系统上运行PgSQL 8.1(不幸的是不能升级)。 有一个Java应用程序运行在PgSQL守护进程之上,我们需要每2个月左右对数据库进行重新索引。 同样重要的是:数据库没有增长。 看起来膨胀现在比以前快了,这往往会增加。 我的configuration在这里可用,autovacuum守护进程已启用,并经常运行:pastebin.com/RytNj7dK 你也可以find这个查询的输出wiki.postgresql.org/wiki/Show_database_bloat 运行reindex后3小时: http ://pastebin.com/raw.php?i= 75fybKyd 运行reindex后72小时: http ://pastebin.com/raw.php?i= 89VKd7PC 有没有人有任何想法,我应该调整,以摆脱日益膨胀? 谢谢你的帮助 PS:由于反垃圾邮件预防系统,我不得不删除前两个链接的前两个http://前缀。

从索引中隐藏文件夹中的每个目录,但不包括其内容

在我的服务器上,我想创build一个隐藏于普通用户的目录,但是可以通过链接进行访问而无需身份validation。 目前我已经设置了这样的: 在虚拟主机configuration中,我已经允许重写索引选项 在我的服务器上,我有文件夹名为h ,如隐藏 与h的同一级别上,我有一个.htaccess文件: IndexIgnore h 而在另一个.htaccess与IndexIgnore * 但是,这也隐藏了我不想要的h/abc/的内容。 我试着把IndexIgnore . 在h/abc/.htaccess ,但它没有工作。 HTTPD文档中也提到了这个问题,后来我学到了这一点: 多个IndexIgnore指令添加到列表中,而不是replace被忽略文件的列表。 默认情况下,列表包含。 (当前目录)。 有没有办法指定IndexIgnore只对当前目录内的项目,而不是recursion? 还是有其他更好的方法来处理这个问题? 我宁愿不要触摸“全局”configuration文件太多,尽pipe这是可能的。

MySQL高CPU负载缓慢logging需要帮助了解

我试图解决服务器上的高负载问题,今天出于某种原因,MySQL占用了过多的CPU时间。 我已启用慢查询,并发现这个查询和其他类似的。 桌子有大约700k行。 SELECT SUM( likes ) AS likes, image_id FROM post_files_likes WHERE image_id NOT IN(563593,591800,578109,581180,515832,646310,670601,626185,689090,80019,399472,468198) AND date > DATE_SUB( '2013-08-19' , INTERVAL 1 MONTH ) GROUP BY image_id ORDER BY likes DESC LIMIT 12; ` mysql> describe post_files_likes -> ; +———-+———+——+—–+———+—————-+ | Field | Type | Null | Key | Default | Extra | […]

使用临时表上的键重新发生问题

我们运行一个大量的读写的论坛,特别是posts和topics表都是innodb。 上个星期我开始用innobackupex进行12小时的备份,因为mysqldump只需要花费很长时间( posts表中有700多万行)。似乎有些东西不喜欢这些备份,因为我每隔一天就有一个反复出现的问题。 症状; 该网站的首页开始抛出错误 日志开始显示错误,如Error: 126 – Incorrect key file for table '/tmp/mysql/#sql_4e87_14.MYI'; try to repair it Error: 126 – Incorrect key file for table '/tmp/mysql/#sql_4e87_14.MYI'; try to repair it / tmp / dir填满,我们开始得到Error: 1030 – Got error 28 from storage engine日志中的Error: 1030 – Got error 28 from storage engine中Error: 1030 – Got error […]

MSSQL服务器:重build与重组索引和更新统计信息

我们有一个很慢的数据库(MS SQL SERVER)。 现在我们知道,索引从来没有重build或重组。 (目前还不清楚这是否真的是问题,但我们现在要经常这样做。) 但现在的问题是:重build指数还是更好一些? 目前我们有超过90%的碎片,所以我做了重build。 但是,如果我想经常这样做,碎片通常会更低。 那么重新组织它而不是重build会更有意义吗? 你真的会在每个MS SQL Server上毫无例外地为此做出一个频繁的任务吗? 在所有MS SQL服务器上是否有意义? 有没有build议这个任务应该运行? 一个星期一次? 每月一次? 我也在博客中看到,在重build/重组之后,他们也是“更新统计”。 这是推荐还是废话? (我在博客上都find了 – >一个说:是的 – >其他:废话!) 你有什么经验? 这些任务(重build/重组/统计)是否需要大量的性能? 许多问题! 抱歉!

MySQL服务器的任何解决scheme,以避免在运行大型查询时呈现无响应?

我为几个客户端运行了几个mysql服务器,这是我常见的一个常见问题。 当我对大数据库运行一些大的查询时,例如: 我有一个带有几个全文索引的MyISAM表,以及大约870万条logging,如果我search一个非索引列,mysql服务变得没有响应,直到结果出来(这可能需要30分钟)。 如何避免呈现mysql服务无响应? 例如,在任何操作系统中,您都可以设置进程优先级,以保证每个进程都有一些资源可以运行,那么在mysql中如何做呢?

如何检查Oracle Extent可用空间?

我需要添加一些索引到一个中等大小的表,我想事先知道表空间是否有空间来保存索引。 (这些范围假设会自动增加大小,但是DBA并不总是有正确的设置,我不想成为崩溃系统的那个)。我需要运行什么SQL来查看有很多空间可用?

修改Apache目录列表?

当我使用 Options +indexes …在.htaccess文件中,Apache(1.3)在该目录中显示格式化的文件列表。 好极了! 但是,格式化的实际布局很糟糕, 文件名只有大约20个字符,并且在最后被截断为“..”。 有什么办法可以改变Apache如何格式化各种文本的宽度吗? (除了,你知道,编辑源代码。)

创build索引时locking超时

我正试图在现有的一个有44,485条logging的表上创build一个新的索引。 我正在使用此查询来创build我的新索引 CREATE INDEX index_name ON table_name (field_name); 每当我运行这个我得到这个超时错误: 1205 – Lock wait timeout exceeded; try restarting transaction 这只在我的本地开发机器上,所以没有任何其他进程占用数据库。 有没有一种向现有表添加新索引的首选方法? 谢谢

仅针对特定IP的Apache目录列表?

我怎样才能启用Indexes只为特定的IP地址? 一般来说,我想要禁用目录列表,但只对特定的IP启用