07-26-2023, 08:32 PM
MySQL/PHP:
I have the following situation: I will have one software with approximately 70 tables installed many times on one server (to be clear: it's a MyBB forum). Say, I will be installing this 500 times (500 different forums for, let's say, 10 different themes and 5 different languages, just as an example).
I'm looking at the following options:
1. Store all forums in one schema and alter their prefixes per forum.
2. Store every forum in a different schema, same prefixes.
3. Create only one set of 70 tables, and append a "forumID" to every table for selection.
4. Create many sets of 70 tables, append a forumID to every table, and use one set of tables for ~10-100 forums.
For 1 & 2, I wouldn't have to alter much of the MyBB code (easy maintenance), for 3 & 4 I'd have to write some sort of search pattern to be used on every query to detect all the tables selected and append the WHERE clause (or create it if not exists) to also consider the forumID (difficult maintenance).
If I were to judge this by MyBB maintenance, it'd be one of the first two options. But I should also consider: What's more performant and faster for the MySQL server?
Thanks,
Chris
/edit: All forums will be using the same code. I don't want to have to maintain 500 different installations of this thing...
I have the following situation: I will have one software with approximately 70 tables installed many times on one server (to be clear: it's a MyBB forum). Say, I will be installing this 500 times (500 different forums for, let's say, 10 different themes and 5 different languages, just as an example).
I'm looking at the following options:
1. Store all forums in one schema and alter their prefixes per forum.
2. Store every forum in a different schema, same prefixes.
3. Create only one set of 70 tables, and append a "forumID" to every table for selection.
4. Create many sets of 70 tables, append a forumID to every table, and use one set of tables for ~10-100 forums.
For 1 & 2, I wouldn't have to alter much of the MyBB code (easy maintenance), for 3 & 4 I'd have to write some sort of search pattern to be used on every query to detect all the tables selected and append the WHERE clause (or create it if not exists) to also consider the forumID (difficult maintenance).
If I were to judge this by MyBB maintenance, it'd be one of the first two options. But I should also consider: What's more performant and faster for the MySQL server?
Thanks,
Chris
/edit: All forums will be using the same code. I don't want to have to maintain 500 different installations of this thing...