support creating temporary tables from queries

also override drop_table in AbstractMySQLAdapter to properly drop
temporary tables without committing the transaction
db:test:clone and prepare must load environment

db:test:clone and db:test:prepare use
ActiveRecord::Base. configurations, so we need to load the rails
environment, otherwise the config wont be in place.
Regression test for load_structure and clone_structure
Update secret_key_base Docs
Merge pull request #13329 from robertomiranda/secret-token-docs

[ci-skip] Update secret_key_base Docs
Merge pull request #13312 from arthurnn/fix_db_task_req

db:test:clone and prepare must load environment
Improve the CHANGELOG entry [ci skip]
Merge pull request #13313 from ccutrer/temp-tables

support creating temporary tables from queries

Conflicts:
	activerecord/CHANGELOG.md
Improve CHANGELOG entry with examples [ci skip]
Spelling and Grammar check [ci skip]
Merge pull request #13307 from akshay-vishnoi/typo

Spelling and Grammar check [ci skip]