Manual:Filearchive table

The filearchive table stores all the media that has been deleted, similar to the archive table's job for deleted text revisions. This is the table that makes image undeletion possible. Prior to MediaWiki 1.11, this was disabled per default, and Manual:$wgSaveDeletedFiles had to be set to true to enable it. Since version 1.11, the behavior is controlled by $wgFileStore, and deleted files are per default stored in $wgUploadDirectory/deleted. See also: Oldimage table

fa_id
Unique row id.

fa_name
Original base filename; key to image.img_name, page.page_title, etc.

fa_archive_name
Filename of archived file, if an old revision, with prepended timestamp. E.g. 20090311210905!Constant_and_setup.png.

fa_storage_group
Which storage bin (directory tree or object store) the file data is stored in. Should be 'deleted' for files that have been deleted; any other bin is not yet in use.

fa_storage_key
SHA-1 of the file contents plus extension, used as a key for storage. eg 8f8a562add37052a1848ff7771a2c515db94baa9.jpg

fa_deleted_user
User who deleted the file, if this file is deleted

fa_deleted_timestamp
Time of deletion, if this file is deleted

fa_deleted_reason
Deletion comment, if this file is deleted

fa_size
File size in bytes. Duplicate of img_size.

fa_width
Image width, in pixels. Duplicate of img_width.

fa_height
Image height, in pixels. Duplicate of img_height.

fa_metadata
Serialized PHP array of the file's properties. Duplicate of img_metadata.

fa_bits
Bit-depth of GIF/PNG palette-based images (up to 16-bit). Non-palette images (JPEG/PNG/TIFF/SVG) are 0 or 8. All other files default to 0. Duplicate of img_bits.

fa_media_type
Possibilities are UNKNOWN, BITMAP, DRAWING, AUDIO, VIDEO, MULTIMEDIA, OFFICE, TEXT, EXECUTABLE, and ARCHIVE. Duplicate of img_media_type.

fa_major_mime
Possibilities are unknown, application, audio, image, text, video, message, model, and multipart. Duplicate of img_major_mime.

fa_minor_mime
E.g. jpeg, gif, png, etc. Duplicate of img_minor_mime.

fa_description
Description field given during upload. It's not the description page (associated File: wiki page), but the "summary" provided by the user in case of reupload. Duplicate of img_description.

fa_user
User ID of who uploaded the file. Duplicate of img_user.

fa_user_text
User name of who uploaded the file. Duplicate of img_user.

fa_timestamp
Timestamp of when upload took place. Duplicate of img_timestamp.

fa_deleted
Visibility of deleted revisions, bitfield.

fa_sha1
sha1 hash of file content

Schema
mysql> describe filearchive; +--++--+-+++ +--++--+-+++ +--++--+-+++ 22 rows in set (0.00 sec)
 * Field               | Type                                                                                                   | Null | Key | Default        | Extra          |
 * fa_id               | int(11)                                                                                                | NO   | PRI | NULL           | auto_increment |
 * fa_name             | varbinary(255)                                                                                         | NO   | MUL |                |                |
 * fa_archive_name     | varbinary(255)                                                                                         | YES  |     |                |                |
 * fa_storage_group    | varbinary(16)                                                                                          | YES  | MUL | NULL           |                |
 * fa_storage_key      | varbinary(64)                                                                                          | YES  |     |                |                |
 * fa_deleted_user     | int(11)                                                                                                | YES  |     | NULL           |                |
 * fa_deleted_timestamp | binary(14)                                                                                            | YES  | MUL |                |                |
 * fa_deleted_reason   | blob                                                                                                   | YES  |     | NULL           |                |
 * fa_size             | int(10) unsigned                                                                                       | YES  |     | 0              |                |
 * fa_width            | int(11)                                                                                                | YES  |     | 0              |                |
 * fa_height           | int(11)                                                                                                | YES  |     | 0              |                |
 * fa_metadata         | mediumblob                                                                                             | YES  |     | NULL           |                |
 * fa_bits             | int(11)                                                                                                | YES  |     | 0              |                |
 * fa_media_type       | enum('UNKNOWN','BITMAP','DRAWING','AUDIO','VIDEO','MULTIMEDIA','OFFICE','TEXT','EXECUTABLE','ARCHIVE') | YES  |     | NULL           |                |
 * fa_major_mime       | enum('unknown','application','audio','image','text','video','message','model','multipart')             | YES  |     | unknown        |                |
 * fa_minor_mime       | varbinary(100)                                                                                         | YES  |     | unknown        |                |
 * fa_description      | tinyblob                                                                                               | YES  |     | NULL           |                |
 * fa_user             | int(10) unsigned                                                                                       | YES  |     | 0              |                |
 * fa_user_text        | varbinary(255)                                                                                         | YES  | MUL | NULL           |                |
 * fa_timestamp        | binary(14)                                                                                             | YES  |     |                |                |
 * fa_deleted          | tinyint(3) unsigned                                                                                    | NO   |     | 0              |                |
 * fa_sha1             | varbinary(32)                                                                                          | NO   | MUL |                |                |

+--++--+-+++ +--++--+-+++ +--++--+-+++
 * Field               | Type                                                                                                   | Null | Key | Default        | Extra          |
 * fa_id               | int(11)                                                                                                | NO   | PRI | NULL           | auto_increment |
 * fa_name             | varbinary(255)                                                                                         | NO   | MUL |                |                |
 * fa_archive_name     | varbinary(255)                                                                                         | YES  |     |                |                |
 * fa_storage_group    | varbinary(16)                                                                                          | YES  | MUL | NULL           |                |
 * fa_storage_key      | varbinary(64)                                                                                          | YES  |     |                |                |
 * fa_deleted_user     | int(11)                                                                                                | YES  |     | NULL           |                |
 * fa_deleted_timestamp | binary(14)                                                                                            | YES  | MUL |                |                |
 * fa_deleted_reason   | blob                                                                                                   | YES  |     | NULL           |                |
 * fa_size             | int(10) unsigned                                                                                       | YES  |     | 0              |                |
 * fa_width            | int(11)                                                                                                | YES  |     | 0              |                |
 * fa_height           | int(11)                                                                                                | YES  |     | 0              |                |
 * fa_metadata         | mediumblob                                                                                             | YES  |     | NULL           |                |
 * fa_bits             | int(11)                                                                                                | YES  |     | 0              |                |
 * fa_media_type       | enum('UNKNOWN','BITMAP','DRAWING','AUDIO','VIDEO','MULTIMEDIA','OFFICE','TEXT','EXECUTABLE','ARCHIVE') | YES  |     | NULL           |                |
 * fa_major_mime       | enum('unknown','application','audio','image','text','video','message','model','multipart')             | YES  |     | unknown        |                |
 * fa_minor_mime       | varbinary(100)                                                                                         | YES  |     | unknown        |                |
 * fa_description      | tinyblob                                                                                               | YES  |     | NULL           |                |
 * fa_user             | int(10) unsigned                                                                                       | YES  |     | 0              |                |
 * fa_user_text        | varbinary(255)                                                                                         | YES  | MUL | NULL           |                |
 * fa_timestamp        | binary(14)                                                                                             | YES  |     |                |                |
 * fa_deleted          | tinyint(3) unsigned                                                                                    | NO   |     | 0              |                |

+--++--+-+-++ +--++--+-+-++ +--++--+-+-++
 * Field               | Type                                                                                                   | Null | Key | Default | Extra          |
 * fa_id               | int(11)                                                                                                | NO   | PRI | NULL    | auto_increment |
 * fa_name             | varchar(255)                                                                                           | NO   | MUL | NULL    |                |
 * fa_archive_name     | varchar(255)                                                                                           | YES  |     | NULL    |                |
 * fa_storage_group    | varbinary(16)                                                                                          | YES  | MUL | NULL    |                |
 * fa_storage_key      | varbinary(64)                                                                                          | YES  |     | NULL    |                |
 * fa_deleted_user     | int(11)                                                                                                | YES  | MUL | NULL    |                |
 * fa_deleted_timestamp | char(14)                                                                                              | YES  | MUL | NULL    |                |
 * fa_deleted_reason   | text                                                                                                   | YES  |     | NULL    |                |
 * fa_size             | int(8) unsigned                                                                                        | YES  |     | 0       |                |
 * fa_width            | int(5)                                                                                                 | YES  |     | 0       |                |
 * fa_height           | int(5)                                                                                                 | YES  |     | 0       |                |
 * fa_metadata         | mediumblob                                                                                             | YES  |     | NULL    |                |
 * fa_bits             | int(3)                                                                                                 | YES  |     | 0       |                |
 * fa_media_type       | enum('UNKNOWN','BITMAP','DRAWING','AUDIO','VIDEO','MULTIMEDIA','OFFICE','TEXT','EXECUTABLE','ARCHIVE') | YES  |     | NULL    |                |
 * fa_major_mime       | enum('unknown','application','audio','image','text','video','message','model','multipart')             | YES  |     | unknown |                |
 * fa_minor_mime       | varchar(32)                                                                                            | YES  |     | unknown |                |
 * fa_description      | tinyblob                                                                                               | YES  |     | NULL    |                |
 * fa_user             | int(5) unsigned                                                                                        | YES  |     | 0       |                |
 * fa_user_text        | varchar(255)                                                                                           | YES  |     | NULL    |                |
 * fa_timestamp        | char(14)                                                                                               | YES  |     | NULL    |                |
 * fa_deleted          | tinyint(1) unsigned                                                                                    | NO   |     | 0       |                |

+--++--+-+-++ +--++--+-+-++ +--++--+-+-++
 * Field               | Type                                                                                                   | Null | Key | Default | Extra          |
 * fa_id               | int(11)                                                                                                | NO   | PRI | NULL    | auto_increment |
 * fa_name             | varchar(255)                                                                                           | NO   | MUL | NULL    |                |
 * fa_archive_name     | varchar(255)                                                                                           | YES  |     | NULL    |                |
 * fa_storage_group    | varbinary(16)                                                                                          | YES  | MUL | NULL    |                |
 * fa_storage_key      | varbinary(64)                                                                                          | YES  |     | NULL    |                |
 * fa_deleted_user     | int(11)                                                                                                | YES  | MUL | NULL    |                |
 * fa_deleted_timestamp | binary(14)                                                                                            | YES  | MUL | NULL    |                |
 * fa_deleted_reason   | text                                                                                                   | YES  |     | NULL    |                |
 * fa_size             | int(10) unsigned                                                                                       | YES  |     | 0       |                |
 * fa_width            | int(11)                                                                                                | YES  |     | 0       |                |
 * fa_height           | int(11)                                                                                                | YES  |     | 0       |                |
 * fa_metadata         | mediumblob                                                                                             | YES  |     | NULL    |                |
 * fa_bits             | int(11)                                                                                                | YES  |     | 0       |                |
 * fa_media_type       | enum('UNKNOWN','BITMAP','DRAWING','AUDIO','VIDEO','MULTIMEDIA','OFFICE','TEXT','EXECUTABLE','ARCHIVE') | YES  |     | NULL    |                |
 * fa_major_mime       | enum('unknown','application','audio','image','text','video','message','model','multipart')             | YES  |     | unknown |                |
 * fa_minor_mime       | varbinary(32)                                                                                          | YES  |     | unknown |                |
 * fa_description      | tinyblob                                                                                               | YES  |     | NULL    |                |
 * fa_user             | int(10) unsigned                                                                                       | YES  |     | 0       |                |
 * fa_user_text        | varchar(255)                                                                                           | YES  |     | NULL    |                |
 * fa_timestamp        | binary(14)                                                                                             | YES  |     | NULL    |                |
 * fa_deleted          | tinyint(3)                                                                                             | NO   |     | 0       |                |

+--++--+-+-++ +--++--+-+-++ +--++--+-+-++
 * Field               | Type                                                                                                   | Null | Key | Default | Extra          |
 * fa_id               | int(11)                                                                                                | NO   | PRI | NULL    | auto_increment |
 * fa_name             | varchar(255)                                                                                           | NO   | MUL | NULL    |                |
 * fa_archive_name     | varchar(255)                                                                                           | YES  |     | NULL    |                |
 * fa_storage_group    | varchar(16)                                                                                            | YES  | MUL | NULL    |                |
 * fa_storage_key      | varchar(64)                                                                                            | YES  |     | NULL    |                |
 * fa_deleted_user     | int(11)                                                                                                | YES  | MUL | NULL    |                |
 * fa_deleted_timestamp | char(14)                                                                                              | YES  | MUL | NULL    |                |
 * fa_deleted_reason   | text                                                                                                   | YES  |     | NULL    |                |
 * fa_size             | int(8) unsigned                                                                                        | YES  |     | 0       |                |
 * fa_width            | int(5)                                                                                                 | YES  |     | 0       |                |
 * fa_height           | int(5)                                                                                                 | YES  |     | 0       |                |
 * fa_metadata         | mediumblob                                                                                             | YES  |     | NULL    |                |
 * fa_bits             | int(3)                                                                                                 | YES  |     | 0       |                |
 * fa_media_type       | enum('UNKNOWN','BITMAP','DRAWING','AUDIO','VIDEO','MULTIMEDIA','OFFICE','TEXT','EXECUTABLE','ARCHIVE') | YES  |     | NULL    |                |
 * fa_major_mime       | enum('unknown','application','audio','image','text','video','message','model','multipart')             | YES  |     | unknown |                |
 * fa_minor_mime       | varchar(32)                                                                                            | YES  |     | unknown |                |
 * fa_description      | tinyblob                                                                                               | YES  |     | NULL    |                |
 * fa_user             | int(5) unsigned                                                                                        | YES  |     | 0       |                |
 * fa_user_text        | varchar(255)                                                                                           | YES  |     | NULL    |                |
 * fa_timestamp        | char(14)                                                                                               | YES  |     | NULL    |                |