개발자는 prod를 포함한 모든 데이터베이스에 대한 읽기 액세스 권한이 필요합니다. 때때로 문제는 Prod의 데이터가 예상했던 것과 다르며 개발자가 데이터를 재생할 수 없기 때문에 문제를 일으키는 데이터를 볼 필요가 있다는 것입니다.
개발자는 프로덕션 데이터 쓰기 권한이나 개체 생성 권한이 없어야합니다. 공식 릴리스의 일부가 아닌 제품은 없습니다. 너무 많은 시간 동안 사람들은 작동하지 않는 prod에 대한 빠른 수정을 수행하여 prod가 더 뭉개지거나 작동하게하지만 코드를 dev / QA / Staging 서버에 넣고 소스에 더 나쁜 코드를 넣는 것을 잊습니다. 제어 저장소와 코드는 다음 공식 릴리스에서 약 한 달 후에 덮어 씁니다.
다른 서버에 배포하면 배포 프로세스에 차이가 있는지 확인하는 데 도움이되므로 개발자는 전체 데이터베이스 QA 권한을 갖는 것을 선호합니다. 소스 구조의 스크립트가 아닌 GUI를 사용하여 데이터베이스 구조 변경이 발생하는 방식).
자체 서버 세트를 보유 할 새로운 엔터프라이즈 유형 클라이언트가있는 경우, 사용하기 전에 권한이 완화 될 수 있습니다. 이것은 많은 일이 일어나야하고 제품을 생산할 수있는 소수의 사람들이 백 로그를 받고 때로는 시간을 내야하기 때문입니다. 특히 다른 시스템에서 데이터를 가져 오는 사람들은 데이터로드에 오랜 시간이 걸리는 경우 시작하기 전에 제품을 구매해야 할 수도 있습니다. 이러한 사람들은 데이터 전문가 인 경향이 있으며 일반 응용 프로그램 개발자보다 임시로 제품에 액세스 할 수있어보다 높은 수준의 편안함을 제공합니다. 이미 운영중인 프로덕션 서버에 갈 때 사치가 아닙니다.
데이터베이스에 대한 프로덕션 권한을 제한하는 데있어 가장 중요한 사항 중 하나는 개발자가 다른 사람이 배포 할 수있는 형식으로 작업을 수행해야한다는 것입니다. 기억력에만 의존 할 때 제품과 달리 다른 방식으로 무언가를 잊어 버렸기 때문에 즉시 수정을 시도하지 않기 때문에 작업의 질을 향상시키는 경향이 있습니다. prod 배포가 개발자가 일반적으로 한 번에 하나의 명령이 아닌 스크립트를 완전히 사용하는 경우 사고 유형을 우연히 잊어 버렸기 때문에 실수로 전체 사용자 테이블을 삭제했습니다. 찌르다. prod 데이터베이스에 대한 제한된 권한을 가진 팀은 데이터베이스 변경 사항을 소스 제어에도 저장할 수 있습니다.