Elimina vecchi argomenti e post.
Rivedi le tue categorie e determina se tutti gli argomenti devono essere migrati. Hai bisogno di tutti i dati o saranno sufficienti gli ultimi anni di argomenti? phpBB eliminerà automaticamente gli argomenti in base all’età . Puoi impostare/modificare le date di eliminazione per i tuoi forum nell’ACP di phpBB. Vai su Forum e seleziona il widget a forma di ingranaggio per il forum che desideri modificare.
Elimina vecchi nomi utente.
L’importatore di Discourse non migrerà gli utenti che non hanno postato. Comprendendo questo, puoi rimuovere i vecchi utenti che non hanno mai postato. Vai all’ACP di phpBB e seleziona Utenti e Gruppi. C’è un’opzione per Eliminare Utenti. Puoi impostare i post uguali a 0 e la data dell’ultima attività . Questo ti permetterà di rimuovere tutti gli utenti che non hanno mai postato e che non sono stati attivi sui tuoi forum per un po’ di tempo.
Determina il numero di post di utenti anonimi.
La migrazione di Discourse migrerĂ gli utenti anonimi come utenti sospesi o tutti in un utente di sistema. Rivedi quanti argomenti/post sono attribuiti a un utente anonimo.
MySQL determinerà lo user_id dell’utente anonimo. Per la maggior parte delle installazioni, questo è user_id = 1.
SELECT `user_id`, `username` FROM `phpbb_users` where `username_clean` = "anonymous"
Per controllare argomenti e post. Aggiorna la query con lo user_id dell’utente anonimo del tuo sistema
SELECT * FROM `phpbb_posts` where `poster_id` = "1"
SELECT * FROM `phpbb_topics` where `topic_poster` = "1"
Sulla base di questi risultati, devi determinare come desideri configurare il sistema per gestire i post e gli argomenti degli utenti anonimi. Ne avevo solo pochi e li ho cancellati.
Rivedi post nascosti o eliminati in modo “soft”.
Questa era una funzionalità implementata in phpBB 3.1. Verifica se hai post nascosti o eliminati in modo “soft”. Discourse ignora questo campo e importerà i post. I post sono stati eliminati dall’utente/moderatori per un motivo.
SELECT * FROM `phpbb_posts` where `poster_visibility` = "2"
Elimina eventuali post elencati.
Valida email pulite.
Esegui lo script MySQL seguente per convalidare le tue email in modo che non abbiano spazi finali e rimuovi eventuali problemi di email identificati.
SELECT `user_email` FROM `phpbb_users` where CHAR_LENGTH(`user_email`) != CHAR_LENGTH(TRIM(`user_email`)) ORDER BY `user_id` ASC
Valida titoli duplicati.
L’impostazione di Discourse ha un flag che consente titoli duplicati. La seguente query ti aiuterà a capire se hai molti titoli duplicati. Il mio forum aveva oltre 1.000 argomenti con titoli duplicati, quindi ho aggiornato il flag per consentire titoli di argomenti duplicati.
SELECT `topic_title`, COUNT(*) as count FROM `phpbb_topics` GROUP BY `topic_title` HAVING COUNT(*) > 1 ORDER BY `count` DESC
Trova argomenti orfani.
Ogni argomento dovrebbe avere un post, ma a volte le cose si rompono. Questo elencherĂ tutti gli argomenti senza post.
SELECT * FROM `phpbb_topics` WHERE `topic_id` NOT IN (Select topic_id from phpbb_posts) ORDER BY `topic_approved` DESC
Pulisci eventuali argomenti orfani.
Trova post orfani.
Ogni post dovrebbe appartenere a un argomento. Questo elencherĂ i post che non hanno un topic_id valido.
SELECT * FROM `phpbb_posts` WHERE `topic_id` NOT IN (Select topic_id from phpbb_topics) ORDER BY `post_id` DESC
Pulisci eventuali post orfani.
Valida che il primo post dell’argomento sia valido
Il primo post di un argomento può essere eliminato, con conseguente argomento con un topic_first_post_id errato. Questo convalida che topic_first_post_id sia valido.
SELECT * FROM `phpbb_topics` WHERE `topic_first_post_id` NOT IN (Select post_id from phpbb_posts) ORDER BY `topic_approved` DESC
Pulisci topic_first_post_id
Aggiungerò elementi aggiuntivi man mano che li troverò preparando una migrazione imminente. Se hai dei controlli consigliati, aggiungili qui sotto.