User Tools

Site Tools


how_to:delete_outqueue_messages_directly_from_the_database

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
how_to:delete_outqueue_messages_directly_from_the_database [2014/01/03 09:23] – created paulhow_to:delete_outqueue_messages_directly_from_the_database [2018/11/14 10:45] (current) – external edit 127.0.0.1
Line 21: Line 21:
 The three most common causes of unwanted messages in the OutQueue are: The three most common causes of unwanted messages in the OutQueue are:
  
-  open relay - you can tell this because the 'senderip' is an external IP address, and the 'authsender' is blank +  open relay - you can tell this because the 'senderip' is an external IP address, and the 'authsender' is blank 
-  'hacked' account - you can tell this because the 'senderip' is an external IP address, and the 'authsender' is not blank - in this case someone has found or guessed the 'authsender's password +  'hacked' account - you can tell this because the 'senderip' is an external IP address, and the 'authsender' is not blank - in this case someone has found or guessed the 'authsender's password 
-  virus/spambot on local PC - you can tell this because the 'senderip' is an internal IP address - check the computer with that IP address+  virus/spambot on local PC - you can tell this because the 'senderip' is an internal IP address - check the computer with that IP address
  
 ====To delete the messages==== ====To delete the messages====
Line 31: Line 31:
  
 If you know the IP address the unwanted messages came from, you could use:\\ If you know the IP address the unwanted messages came from, you could use:\\
-''DELETE FROM outqueue.outmessages WHERE senderip='<ip address>'''+''DELETE FROM outqueue.outmessages WHERE senderip='<ip address>';''
  
 If you know the authenticated sender the unwanted messages came from, you could use:\\ If you know the authenticated sender the unwanted messages came from, you could use:\\
-''DELETE FROM outqueue.outmessages WHERE authsender='<username>'''+''DELETE FROM outqueue.outmessages WHERE authsender='<username>';''
  
 etc. etc.
  
-After deleting the messages, you may want to shrink the disk file, otherwise there will be a lot of wasted disk space. To do this, at the psql prompt, do:+After deleting the messages, you may want to shrink the disk file, otherwise there may be a lot of wasted disk space if you have deleted an extremely large number of messages. To do this, at the psql prompt, do:
  
 ''CLUSTER VERBOSE outqueue.outmessages;\\ ''CLUSTER VERBOSE outqueue.outmessages;\\
 CLUSTER VERBOSE outqueue.outrecipients;'' CLUSTER VERBOSE outqueue.outrecipients;''
  
 +===Alternative method (quicker)===
 +
 +An alternate way to delete **ALL** the outqueue messages, and related information (but not settings or messages in mailboxes) is to stop VPOP3 first, and then use:
 +
 +''DROP SCHEMA outqueue CASCADE;''
 +
 +This will delete all the relevant tables from the database, including their contents, so will be a lot quicker. When you restart VPOP3 it will recreate the deleted tables. You cannot selectively delete messages in this case. If you are using some sort of third party database replication, such as Bucardo, then that may need reinitialising.
how_to/delete_outqueue_messages_directly_from_the_database.1388741012.txt.gz · Last modified: 2018/11/14 10:44 (external edit)