Voor elke user een nieuwe database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2

Ivo P

Ivo P

23/09/2014 12:17:04
Quote Anchor link
- Aar - op 23/09/2014 11:20:39:
Los van het feit dat hij alles in losse database opslaat, maakt mij nieuwsgierig hoe hij ze allemaal backupt. je moet je backup-script dan ook steeds aanpassen, dat hij een extra database meeneemt. Al met al... enorm omslachtig gedoe.


bijvoorbeeld met
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
#!/bin/sh

date=`date -I`

for i in /var/lib/mysql/*/; do
dbname=`basename $i`
echo $dbname
  rm /backup/$dbname.sql.3
  mv /backup/$dbname.sql.2 /backup/$dbname.sql.3
  mv /backup/$dbname.sql.1 /backup/$dbname.sql.2
  mv /backup/$dbname.sql   /backup/$dbname.sql.1
 /usr/bin/mysqldump -uroot -mypassowrd --host=127.0.0.1 --routines $dbname > /backup/$dbname.sql
done
 
PHP hulp

PHP hulp

26/04/2024 20:07:38
 
Donny Wie weet

Donny Wie weet

23/09/2014 12:20:28
Quote Anchor link
Joshua van den Hoonaard op 23/09/2014 12:15:21:
Heb nu in ieder geval genoeg argumenten om het anders te doen dan dat hij wenst. haha :)


Een klant moet niet gaan bepalen hoe jij het moet doen. Je kan je klant adviseren wat jou het beste lijkt en dat proberen te verkopen. Klanten bekijken een website vaak alleen vanuit de front-end en niet vanuit de back-end. Sommige denken dat ze alles erover weten, maar uiteindelijk maken ze het jou, hunzelf en nu ook ons :P wat lastig. Klant is koning, maar geen keizer. Hij wil efficientie, een goede prijs en een goed systeem. Bang dat ie data gaat verliezen? Gebruik cronjobs, of maak elk uur handmatig een backup... Ik heb zelf een VPS met ongeveer 25 databases, deze worden om de 6 uur gedumpt voor een backup.
 
Ward van der Put
Moderator

Ward van der Put

23/09/2014 12:52:17
Quote Anchor link
In het wild maak je de wildste dingen mee... Er zijn "webwinkelplatforms" die doodleuk elke webwinkelier een eigen kopie geven van osCommerce of OpenCart. Er zijn ook "blogplatforms" die hetzelfde doen met WordPress. Even de strings met softwarenamen zoeken en vervangen, en de abonnees zien niet dat ze betalen voor gratis open-source freeware. Het gebeurt.

Ozzie PHP op 23/09/2014 12:15:21:
@Ward:

Dan kun je toch ook voor die ene specifieke toepassing een EXTRA database maken?

Dan krijg je gedoe bij queries met JOINs over meerdere tabellen uit de applicatiespecifieke database plus de standaarddatabase. Niet doen. Je kunt voor het overzicht en het beheer beter een PREFIX_ aan tabellen meegeven met de applicatienaam, dat is de best practice.
 
Joshua van den Hoonaard

Joshua van den Hoonaard

24/09/2014 12:32:56
Quote Anchor link
Ik heb het er nog eens over gehad met mijn opdrachtgever.
Uiteindelijk bleek het dus zo te zijn dat de users allemaal wel in één tabel komt te staan en in één database.

Echter zullen de users een hoop gegevens invoeren, en daarvoor moet elke user een aparte database toegewezen krijgen op basis van hun klantnummer.

Dus bijvoorbeeld: user1 met klantnummer 4453, moet via een paneel toegang krijgen tot de gegevens die in de database genaamd 4453 staat.


Ook voor mij is dit nog lastig te programmeren, maar als ik er niet uitkom weet ik waar ik in ieder geval terecht kan.

In ieder geval bedankt voor al jullie reacties.
 
Ivo P

Ivo P

24/09/2014 13:15:18
Quote Anchor link
ik zou een prefix voor die 4453 zetten.

4453 zou namelijk gemakkelijk als getal gezien kunnen worden.

Bijvoorbeeld DB4453 niet.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
create database 1234;

geeft sowieso bij mij een foutmelding.
 
Ward van der Put
Moderator

Ward van der Put

24/09/2014 13:27:05
 
Ivo P

Ivo P

24/09/2014 14:01:02
Quote Anchor link
mét backtics mag je de raarste namen gebruiken, maar vergeet ze een keer en in het gunstigste geval krijg je een foutmelding.
 
- Ariën  -
Beheerder

- Ariën -

24/09/2014 15:29:28
Quote Anchor link
Joshua van den Hoonaard op 24/09/2014 12:32:56:
Ik heb het er nog eens over gehad met mijn opdrachtgever.
Uiteindelijk bleek het dus zo te zijn dat de users allemaal wel in één tabel komt te staan en in één database.

Echter zullen de users een hoop gegevens invoeren, en daarvoor moet elke user een aparte database toegewezen krijgen op basis van hun klantnummer.

Duidelijk, ik neem aan dat de users zelf hun eigen database kunnen invullen qua structuur, voor een eigen applicatie? In dat geval is het creëren van een database per user correct.

En anders moet de opdrachtgever het zelf maar weten, vind ik ;-)
Gewijzigd op 24/09/2014 15:30:45 door - Ariën -
 

Pagina: « vorige 1 2



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.