Ich habe immer gehört, dass es eine schlechte Praxis ist, sich anhand von Produktionsdaten zu entwickeln, und bin derzeit dabei, auf ein Dev> Stage> Production- Modell umzusteigen , hauptsächlich weil ich einen neuen Mitarbeiter mit minimalen Fähigkeiten habe und ihn lieber nicht haben möchte arbeiten noch direkt mit Produktionsdaten.
Aber ich habe lange Zeit direkt mit Produktionsdaten gearbeitet, mit minimalen Kopfschmerzen, außer vielleicht ein paar Fehlern, die sich hier oder da einschleichen, Dinge wie Rechtschreibprobleme, schlechter Alternativtext, Links, die auf den falschen Ort verweisen. Dies scheint auf einen Mangel an Peer Review meinerseits zurückzuführen zu sein, nicht auf die Arbeit mit Live-Daten.
Warum ist die Entwicklung auf der Live-Site so schlecht?
quelle
Antworten:
Wenn Sie während der Entwicklung SQL-Befehle ausführen, die vorhandene Datenbanktabellen enthalten
INSERT
oderUPDATE
in vorhandenen Datenbanktabellen enthalten, besteht das Risiko, dass diese Datenbanktabellen geschäftskritisch sind.Einige Orte synchronisieren Produktionsdaten in bestimmten Intervallen in die Entwicklungsdatenbank, z. B. einmal pro Woche oder auf Entwickleranforderung, damit Sie neue Daten zum Entwickeln haben.
Wenn Ihre Produktionsdaten jedoch nicht durch Ihre Aktivitäten gefährdet sind, z. B. wenn Sie lediglich eine Ansicht einiger Daten entwickelt haben, ist dies normalerweise keine große Sache. Wenn Sie jetzt Berichte ausführen, die Tabellenscans durchführen, haben Sie das Potenzial, eine Tabelle zu sperren, und Ihre vorhandenen Benutzer sind betroffen.
In solchen Fällen würde ich mich an meinen Datenbankadministrator wenden. Wenn es keinen "offiziellen" DBA gibt, würde ich auf Nummer sicher gehen. Es ist einfach genug, eine Entwicklungsdatenbank zu erstellen, selbst für mich. In einem Team ist es wichtig. Andernfalls könnten Sie, wenn Sie darauf bestehen, nur eine Datenbank zu haben, Ihren Entwicklungsdatenbanktabellen ein Präfix voranstellen
DEV_
und sich ein bisschen besser fühlen. Ja, das erfordert einige Codeänderungen, aber in der Entwicklung$debug = true
lohnt es sich normalerweise , einige Variablen während der Entwicklung usw. hinzuzufügen .Viele Möglichkeiten, dies zu erreichen. Es hängt sehr von Ihrer Situation ab.
quelle
Sie möchten NICHT gegen Produktionsdaten auf Ihrem Produktionsserver entwickeln. Es gibt ein paar große Gründe.
Wenn möglich, würde ich niemals Entwicklungsarbeiten an einer Live-Box durchführen. Am besten erstellen Sie eine Sicherungskopie der Datenbank und der Seiten, arbeiten mit der Kopie und senden dann Ihre Updates. Ein Tool, das mir sehr geholfen hat, ist Msfts SyncToy.
quelle
Nun, Sie können die Daten wirklich durcheinander bringen. Stellen Sie sich vor, Sie lassen eine where-Klausel weg. Selbst wenn Sie stündliche Backups haben, wäre dies ein Problem, das behoben werden muss.
quelle
Wenn Sie nicht ohne Sicherheitsgurt fahren, entwickeln Sie keine Produktionsdaten. Nur ein Sicherheitsproblem.
quelle
Wenn Sie Produktionsdaten zur Verfügung haben, ist es sinnvoll, diese zum Testen zu verwenden, verwenden Sie jedoch eine separate Testdatenbank mit einer Kopie dieser Daten. Andernfalls funktionieren viele Dinge für Ihre wenigen "blabla" -Testaufzeichnungen, jedoch nicht für ein reales Szenario.
Und für die Entwicklung von Live-Produktionsdaten - denken Sie an die Murphy-Gesetze "Alles, was schief gehen kann, wird schief gehen.", Und es ist so einfach, einen kleinen Fehler mit großen schlimmen Konsequenzen zu machen.
quelle