今日Cacti不显示流量,有如下 告警信息:

0/17/2012 10:26:38 AM - CMDPHP: Poller[0] ERROR: SQL Assoc Failed!, Error:'145', SQL:"select poller_output.output, poller_output.time, poller_output.local_data_id, poller_item.rrd_path, poller_item.rrd_name, poller_item.rrd_num from (poller_output,poller_item) where (poller_output.local_data_id=poller_item.local_data_id and poller_output.rrd_name=poller_item.rrd_name) LIMIT 10000"
10/17/2012 10:26:37 AM - CMDPHP: Poller[0] ERROR: SQL Assoc Failed!, Error:'145', SQL:"select poller_output.output, poller_output.time, poller_output.local_data_id, poller_item.rrd_path, poller_item.rrd_name, poller_item.rrd_num from (poller_output,poller_item) where (poller_output.local_data_id=poller_item.local_data_id and poller_output.rrd_name=poller_item.rrd_name) LIMIT 10000"
10/17/2012 10:26:36 AM - CMDPHP: Poller[0] ERROR: SQL Assoc Failed!, Error:'145', SQL:"select poller_output.output, poller_output.time, poller_output.local_data_id, poller_item.rrd_path, poller_item.rrd_name, poller_item.rrd_num from (poller_output,poller_item) where (poller_output.local_data_id=poller_item.local_data_id and poller_output.rrd_name=poller_item.rrd_name) LIMIT 10000"

 

 

Mysql 中数据表修复:
#用REPAIR TABLE方式修复,语法:REPAIR TABLE 表名 [选项]
#进入Mysql数据库:
C:\AppServ\MySQL\bin>mysql -u root -p
Enter password: **************
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 87
Server version: 5.0.45-community-nt-log MySQL Community Edition (GPL)
 
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
# 显示所有数据库:
mysql>  show databases;
+--------------------+
| Database            |
+--------------------+
| information_schema |
| cacti               |
| mysql               |
| phpmyadmin          |
| test                |
+--------------------+
5 rows in set (0.00 sec)
 
mysql>
# 连接损坏表所在的数据库:
mysql>  use cacti;
Database changed
# 查看当前连接的数据库:
mysql>  select database();
+------------+
| database() |
+------------+
| cacti       |
+------------+
1 row in set (0.00 sec)
# REPAIR TABLE 修复数据表
mysql>  REPAIR TABLE poller_item;
+-------------------+--------+----------+----------+
| Table              | Op     | Msg_type | Msg_text |
+-------------------+--------+----------+----------+
| cacti.poller_item | repair | status    | OK       |
+-------------------+--------+----------+----------+
1 row in set (0.02 sec)
 
mysql>
修复成功。
如果修复失败,可以尝试用USE_FRM选项,例:
mysql>  REPAIR TABLE poller_item USE_FRM;