Panowie, taki przykład system IAI, kilka tysięcy uruchomionych sklepów, w niektórych po milion towarów, nie sadze, żeby taka ilośc produktów klientów i innych danych siedziął w jednej tabeli. Przykładów takich programów jest wiele.
Muszą być osobne bazy danych, tylko kwestia, jak optymalnie i bezpiecznie uwieżytelniać poszczególnych uzytkowników. Jak tu kolega napisał, można zrobić coś bez bazy sql. I w zalezności od usera łączyć się z wybraną bazą danych. Tylko jak to bezpiecznie zrobic, jak zablokowac dostep do pliku, moze trzymac taki plik z danymi w przestrzeni serwera niedostepnej dla innych, ew. kodowanie haseł.
Cytat(com @ 22.05.2016, 19:56:03 )

weź dajmy na to te forum, jak sobie niby wyobrażasz jakbyśmy tu mieli mięć dla każdego usera oddzielna bazę, to jest nie możliwe, czy tam pierwszy lepszy inny system. Nawet mając dla każdego usera oddzielny kontener na dane jak zrobisz błąd to jestem wstanie uzyskać dane innego użytkownika tak czy owak.
forum to zły przykład, bo wszyscy kozystacie z tych damych danych. To dlaczego kolejne fora, z innych serwisów nei sa na jednej bazie ale na osobnej? Nie chodzi o rozbicie ma userów którzy beda zarejestrowani, ale na inne instancje programu. Wyobrażacie sobie takich 300 for na jednej tabeli?
Cytat(phpion @ 24.05.2016, 09:08:30 )

Moim zdaniem osobne bazy to nie jest wcale głupi pomysł. Pamiętajmy, że mówimy tutaj o aplikacji. Sami w pracy mamy właśnie sporą aplikację, która z założenia ma pozwalać na równoczesne prowadzenie kilku klientów na tej samej bazie danych. Praktycznie w każdej tabeli dokładane jest (przykładowo) client_id. Minusy to to, że wszędzie trzeba o tym pamiętać żeby ograniczać dane do danego client_id, ograniczenia unikalności też trzeba zakładać w połączeniu z client_id itd. Moim zdaniem jest to niewygodne i w naszym przypadku lepiej sprawdziłaby się właśnie osobna baza dla każdego klienta. Nie krytykowałbym więc z góry tego pomysłu.
A jak takich instancji bedzie kilka set, to moga być grube miliony danych w kazdej tabeli, może to szybko zabić serwer, dodatkowe obdciążenie własnie przez parametr "client_id". Nawet w instancji, która ma kilka wpisów bedzie generowąło spore obciążenie.