Thank you Neil B to getting back:
Here is more detail:
Mattermost Version: 9.8.1
Database Schema Version: 120
Build Number: 9253470812
Database: postgres
I followed these steps:
https://docs.mattermost.com/deploy/postgres-migration.html
I created a PostgreSQL DB.
I changed the types of the listed columns from Text to Varchar in MySQL database.
Removed the Full Text indexes
Unsupported unicode sequences
DROP TABLE mattermost.schema_migrations;
ALTER TABLE SharedChannelRemotes DROP COLUMN description, DROP COLUMN nextsyncat;
SET @preparedStatement = (SELECT IF(
(
SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Threads'
AND table_schema = DATABASE()
AND column_name = 'TeamId'
) > 0,
'ALTER TABLE Threads DROP COLUMN TeamId;',
'SELECT 1'
));
PREPARE alterIfExists FROM @preparedStatement;
EXECUTE alterIfExists;
DEALLOCATE PREPARE alterIfExists;
And used the provided migration.Load by changing the DSNs.
After Migration:
CREATE INDEX IF NOT EXISTS idx_posts_message_txt ON public.posts USING gin(to_tsvector('english', message));
CREATE INDEX IF NOT EXISTS idx_fileinfo_content_txt ON public.fileinfo USING gin(to_tsvector('english', content));
After doing all of these stuff, I checked and found that the mattermost did not start because, while transferring data from MySQL to PostgreSQL, pgloader skipped all the duplicates from preferences table.
Error Messages
Blockquote
{“timestamp”:“2024-06-21 10:11:58.270 +05:00”,“level”:“info”,“msg”:“SimpleWorker: Job is complete”,“caller”:“jobs/base_workers.go:101”,“worker_name”:“ExpiryNotify”,“job_id”:“m1qooyfrp7brmyoq8gj7gqcbce”,“job_type”:“expiry_notify”,“job_create_at”:“Jun 21 05:11:48.646”}
{“timestamp”:“2024-06-21 10:19:08.050 +05:00”,“level”:“info”,“msg”:“Post.Message has size restrictions”,“caller”:“sqlstore/post_store.go:2615”,“max_characters”:16383,“max_bytes”:65535}
Kindly guide what change in other tables we need to do in order to run the mattermost with PostgreSQL?
Regards
Murtaza