migration.load.difff

Created Diff never expires
12 removals
Lines
Total
Removed
Words
Total
Removed
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
44 lines
12 additions
Lines
Total
Added
Words
Total
Added
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
44 lines
LOAD DATABASE
LOAD DATABASE
FROM mysql://{{ mysql_user }}:{{ mysql_password }}@{{ mysql_address }}/{{ source_schema }}
FROM mysql://{{ mysql_user }}:{{ mysql_password }}@{{ mysql_address }}/{{ source_schema }}
INTO pgsql://{{ pg_user }}:{{ pg_password }}@{{ postgres_address }}/{{ target_schema }}
INTO pgsql://{{ pg_user }}:{{ pg_password }}@{{ postgres_address }}/{{ target_schema }}


WITH data only,
WITH data only,
workers = 8, concurrency = 1,
workers = 8, concurrency = 1,
multiple readers per thread, rows per range = 10000,
multiple readers per thread, rows per range = 10000,
prefetch rows = 10000, batch rows = 2500,
prefetch rows = 10000, batch rows = 2500,
create no tables, create no indexes,
create no tables, create no indexes,
preserve index names
preserve index names


SET PostgreSQL PARAMETERS
SET PostgreSQL PARAMETERS
maintenance_work_mem to '128MB',
maintenance_work_mem to '128MB',
work_mem to '12MB'
work_mem to '12MB'


SET MySQL PARAMETERS
SET MySQL PARAMETERS
net_read_timeout = '120',
net_read_timeout = '120',
net_write_timeout = '120'
net_write_timeout = '120'


CAST column Channels.Type to "channel_type" drop typemod,
CAST column Channels.Type to "channel_type" drop typemod,
column Teams.Type to "team_type" drop typemod,
column Teams.Type to "team_type" drop typemod,
column UploadSessions.Type to "upload_session_type" drop typemod,
column UploadSessions.Type to "upload_session_type" drop typemod,
column ChannelBookmarks.Type to "channel_bookmark_type" drop typemod,
column ChannelBookmarks.Type to "channel_bookmark_type" drop typemod,
column Drafts.Priority to text,
column Drafts.Priority to text,
type int when (= precision 11) to integer drop typemod,
type int when (= precision 11) to integer drop typemod,
type bigint when (= precision 20) to bigint drop typemod,
type bigint when (= precision 20) to bigint drop typemod,
type text to varchar drop typemod,
type text to varchar drop typemod,
type tinyint when (<= precision 4) to boolean using tinyint-to-boolean,
type tinyint when (<= precision 4) to boolean using tinyint-to-boolean,
type json to jsonb drop typemod
type json to jsonb drop typemod


EXCLUDING TABLE NAMES MATCHING ~<IR_>, ~<focalboard>, 'schema_migrations', 'db_migrations', 'db_lock',
EXCLUDING TABLE NAMES MATCHING ~<IR_>, ~<focalboard>, 'schema_migrations', 'db_migrations', 'db_lock',
'Configurations', 'ConfigurationFiles', 'db_config_migrations'
'Configurations', 'ConfigurationFiles', 'db_config_migrations'


BEFORE LOAD DO
BEFORE LOAD DO
$$ ALTER SCHEMA public RENAME TO {{ source_schema }}; $$,
$$ ALTER SCHEMA public RENAME TO "{{ source_schema }}"; $$,
$$ TRUNCATE TABLE {{ source_schema }}.systems; $$,
$$ TRUNCATE TABLE "{{ source_schema }}".systems; $$,
$$ DROP INDEX IF EXISTS {{ source_schema }}.idx_posts_message_txt; $$,
$$ DROP INDEX IF EXISTS "{{ source_schema }}".idx_posts_message_txt; $$,
$$ DROP INDEX IF EXISTS {{ source_schema }}.idx_fileinfo_content_txt; $$
$$ DROP INDEX IF EXISTS "{{ source_schema }}".idx_fileinfo_content_txt; $$


AFTER LOAD DO
AFTER LOAD DO
$$ UPDATE {{ source_schema }}.db_migrations set name='add_createat_to_teamembers' where version=92; $$,
$$ UPDATE "{{ source_schema }}".db_migrations set name='add_createat_to_teamembers' where version=92; $$,
$$ ALTER SCHEMA {{ source_schema }} RENAME TO public; $$,
$$ ALTER SCHEMA "{{ source_schema }}" RENAME TO public; $$,
$$ SELECT pg_catalog.set_config('search_path', '"$user", public', false); $$,
$$ SELECT pg_catalog.set_config('search_path', '"$user", public', false); $$,
$$ ALTER USER {{ pg_user }} SET SEARCH_PATH TO 'public'; $$;
$$ ALTER USER {{ pg_user }} SET SEARCH_PATH TO 'public'; $$;