Assuming you’ve already uploaded all of the contents of the uploads/ folder into the Amazon S3 bucket (set to public), you now need to run the following SQL query to add rows to the wp_as3cf_items table:
INSERT IGNORE INTO wp_as3cf_items (provider, region, bucket, path, original_path, is_private, source_type, source_id, source_path, original_source_path, extra_info, originator, is_verified) SELECT 'aws', 'AWS_REGION_HERE', 'AWS_BUCKET_NAME_HERE', CONCAT('wp-content/uploads/', SUBSTRING_INDEX(guid, 'wp-content/uploads/', -1) ) AS path, CONCAT('wp-content/uploads/', SUBSTRING_INDEX(guid, 'wp-content/uploads/', -1) ) AS original_path, 0, 'media-library', id as source_id, SUBSTRING_INDEX(guid, 'wp-content/uploads/', -1) AS source_path, SUBSTRING_INDEX(guid, 'wp-content/uploads/', -1) AS original_source_path, 'a:2:{s:13:"private_sizes";a:0:{}s:14:"private_prefix";s:0:"";}', 0, 1 FROM `wp_posts` WHERE `post_type` = 'attachment';
Make sure to replace AWS_REGION_HERE and AWS_BUCKET_NAME_HERE above; you may also need to adjust the CONCAT for path and original_path if your bucket has a complex folder structure.
Source: