Twórcy potrzebują dostępu do odczytu do wszystkich baz danych, w tym prod. Czasami problem polega na tym, że dane w Prod nie są tym, czego się spodziewali, i muszą zobaczyć dane, które powodują problem, ponieważ nie mogą odtworzyć ich w dev.
Deweloperzy nie powinni mieć uprawnień do zapisu danych produkcyjnych ani uprawnień do tworzenia obiektów. Nie powinno być nic, co nie byłoby częścią oficjalnego wydania. Zbyt wiele razy ludzie robią szybkie poprawki na prod, który albo nie działa, co powoduje, że prod jest jeszcze bardziej zepsuty lub działa, ale zapominają o umieszczeniu kodu na serwerach dev / QA / Staging i jeszcze gorzej w źródle kontroluj repozytorium, a kod zostanie nadpisany około miesiąc później w następnej oficjalnej wersji.
Wolę programistom mieć pełne prawa do kontroli jakości bazy danych, ponieważ wdrożenie na innym serwerze pomaga im sprawdzić, czy są jakieś luki w procesie wdrażania (oops zapomniałem, że zmieniłem tę tabelę, aby to zrobić i tak, i oops zapomniałem, że zrobiłem tę zmianę za pomocą GUI, a nie w skrypcie w kontroli źródła, w ten sposób muszą nastąpić zmiany strukturalne bazy danych).
Jeśli masz nowego klienta typu Enterprise, który będzie miał własny zestaw serwerów, uprawnienia mogą zostać złagodzone przed uruchomieniem. Wynika to z faktu, że tak wiele musi się wydarzyć, a kilka osób, które mogą to zrobić na prod, zostaje zaległych, a czasem nawet potrzebuje czasu wolnego. W szczególności ludzie, którzy importują dane z innego systemu, mogą zostać poproszeni o umieszczenie ich na prod przed uruchomieniem, jeśli ładowanie danych zajmie dużo czasu. Osoby te są zwykle specjalistami od danych i zapewnia wyższy poziom komfortu, umożliwiając im tymczasowy dostęp do produ niż przeciętny twórca aplikacji. Nie jest to luksus, który masz, gdy przechodzisz na już działający serwer produkcyjny.
Jedną z najważniejszych rzeczy w ograniczaniu praw do produkcji do bazy danych jest to, że twórcy muszą wtedy upewnić się, że ich praca jest w formie, którą może wdrożyć ktoś inny. To zazwyczaj poprawia jakość pracy, ponieważ nie próbują dokonywać poprawek w locie, ponieważ zapomnieli o czymś lub coś nie działało, ponieważ zrobili to inaczej na prod, niż naiwnie, polegając na samej pamięci. Tracicie także te „oops, przypadkowo usunąłem całą tabelę użytkowników, ponieważ zapomniałem wyróżnić przypadek typu„ klauzula where ”, gdy wdrożenia produkcyjne wykorzystują wyłącznie skrypty, które są uruchamiane jako całość, a nie jedno polecenie naraz, co jest typowe dla programistów uruchomić rzeczy na prod. Zespół z ograniczonymi prawami do baz danych prod jest bardziej skłonny do przechowywania zmian w bazie danych również w zakresie kontroli źródła.