Invision Community 4: SEO, prepare for v5 and dormant account notifications By Matt Monday at 02:04 PM
VaBeach_Guy Posted April 19, 2020 Posted April 19, 2020 Hello all, this may seem like an odd thing to want to do, but I need to be able to purge all members (quickly and easily), while keeping all posts intact from a message board that has upwards of 250,000 members and maybe upwards of 10,000,000 posts. The reason for this is because a major sports franchise is discontinuing their message board at the end of this month and they've agreed to hand the database over to me, but only if all users are purged first (privacy concerns). We (the existing community), want to at least preserve the board history (posts), even if all user accounts are purged. We're forming a new privately owned community to carry on, but would really like to preserve 20 years worth of community history it possible. Any ideas on how this can be done? Our deadline is ticking away.
CoffeeCake Posted April 20, 2020 Posted April 20, 2020 The solution is probably best handled directly against the SQL database. You would want to purge member, ip address, subscription, and private message tables to think of the main ones. I don't think you'll find an inbuilt feature to do this that would not be excruciatingly manual and labor intensive.
VaBeach_Guy Posted April 20, 2020 Author Posted April 20, 2020 42 minutes ago, Paul E. said: The solution is probably best handled directly against the SQL database. You would want to purge member, ip address, subscription, and private message tables to think of the main ones. I don't think you'll find an inbuilt feature to do this that would not be excruciatingly manual and labor intensive. That was what I thought too, but wasn't sure. If those tables are purged and the member list is blanked out, would the board be 'broken' and give an error or would all posts be there and readable? Also, it's been a while since I've messed around in the ACP, can the purge be done from within the ACP? Getting access to phpMyAdmin might not be possible.
Miss_B Posted April 20, 2020 Posted April 20, 2020 I think that it is best to create a plugin to handle the deletion of all members rather than doing it with a sql query. Posts and topics will remain in the database.
bfarber Posted April 20, 2020 Posted April 20, 2020 You could search for all members in a group and then choose to delete all of those users. It would take some time for this to happen via the background tasks but I would strongly discourage you from trying to do this in the database directly (there are tons and tons of tables that would need to be considered). Just search for all users in the "Members" group and choose to delete the results. Repeat for each group except admins, and then delete any admin accounts except yours one by one. Rhett 1
VaBeach_Guy Posted April 20, 2020 Author Posted April 20, 2020 3 hours ago, bfarber said: You could search for all members in a group and then choose to delete all of those users. It would take some time for this to happen via the background tasks but I would strongly discourage you from trying to do this in the database directly (there are tons and tons of tables that would need to be considered). Just search for all users in the "Members" group and choose to delete the results. Repeat for each group except admins, and then delete any admin accounts except yours one by one. Yeah, I'm no SQL expert (to say it mildly), I don't have access to the database anyway, I'd have to request that and likely be told no. Deleting the entire membership one member at a time in the ACP would be a very long and tedious process. More time than is left to get it done in, so it may be a lost cause unless I can convince them to some special arrangement that would keep it available for an extra month and they let me pay the cost of keeping it available but they retain ownership while I (and a few of the board admins) get the work done to their satisfaction. I was hoping that there might be an easier, quicker process, though.
bfarber Posted April 20, 2020 Posted April 20, 2020 You're misunderstanding my suggestion. Yeah you definitely don't want to delete each member one by one. I'm suggesting you use the "mass" tools available for managing accounts. Do this: Log in to the AdminCP Visit Members > Groups Click the number next to the "Members" group. You will see a list of members. Then click the link to prune all of the results found as seen in this screenshot Repeat those steps for each group, except for admins which you'll delete one by one because you'll need to preserve your own account (there shouldn't be that many admins so this shouldn't be a problem). Joel R and VaBeach_Guy 1 1
VaBeach_Guy Posted April 20, 2020 Author Posted April 20, 2020 1 hour ago, bfarber said: You're misunderstanding my suggestion. Yeah you definitely don't want to delete each member one by one. I'm suggesting you use the "mass" tools available for managing accounts. Do this: Log in to the AdminCP Visit Members > Groups Click the number next to the "Members" group. You will see a list of members. Then click the link to prune all of the results found as seen in this screenshot Repeat those steps for each group, except for admins which you'll delete one by one because you'll need to preserve your own account (there shouldn't be that many admins so this shouldn't be a problem). That's great! I'll see about doing that immediately... well, as soon as the replacement forum is ready. Doing that will allow preservation of the post history, correct? That would defeat the purpose, otherwise lol. I don't think the team has updated the board in a little while, I think they're currently using 4.3.6, but I could have them upgrade to the latest version if need be, if 4.3.6 doesn't have that capability. Thanks again for explaining that, it's been multiple years since I've fooled around in an ACP and back then, I think it was something like version 3.something. So it's been a while.
bfarber Posted April 20, 2020 Posted April 20, 2020 The content will remain but be attributed to a "guest" user. This tool was available in 4.3.x as well.
VaBeach_Guy Posted April 20, 2020 Author Posted April 20, 2020 36 minutes ago, bfarber said: The content will remain but be attributed to a "guest" user. This tool was available in 4.3.x as well. That's exactly how I wanted it to appear. I showed your explanation to an Admin there and he did a test, to make sure of how to do it, and it worked perfectly. I just don't know how quickly 250,000 or so members will purge lol. It sucks that we have to do it that way, but I completely understand the privacy issues that come up if it isn't done.
Dean_ Posted April 20, 2020 Posted April 20, 2020 Why are they making you delete details. If it's being transferred (whoever is going to look after) then that people becomes the data controller under GDPR (if applicable). I couldn't think of anything worse than having 10M+ posts and have none of them relate to anyone, it will look a mess and completely ruin that 'sense of community'. Could you not send out an email explaining the issue and ask if everyone is happy with the transfer, or at least let everyone know via post that you (or whoever) is taking over. It really would be a shame to delete everyone...
VaBeach_Guy Posted April 20, 2020 Author Posted April 20, 2020 2 minutes ago, Dean_ said: Why are they making you delete details. If it's being transferred (whoever is going to look after) then that people becomes the data controller under GDPR (if applicable). I couldn't think of anything worse than having 10M+ posts and have none of them relate to anyone, it will look a mess and completely ruin that 'sense of community'. Could you not send out an email explaining the issue and ask if everyone is happy with the transfer, or at least let everyone know via post that you (or whoever) is taking over. It really would be a shame to delete everyone... Privacy concerns, apparently their legal department required it. The thing with sending out an email to see if everyone's ok with it is that they (the team) has had this iteration of their message board going since 2003. So there's a lot of inactive members, but there's the possibility that some of those inactive members would object and there may be no way to get their approval before April 30th. The board with over 10 Million posts, will have to become an 'archived' board. It'll be moved to a host that I pay for, and it'll be in my name. But registrations and posting will be frozen in time... but preserved. A new board will pick up where the old one left off though, and everyone will have to register anew and build a new posting history on the active, new board.
Recommended Posts