私が働いている会社では、devospsエンジニア(現在、私と同僚の2人のメンバーのみ)が、本番データベースにアクセスできる唯一の人です。
したがって、他の開発者が本番データベースでMySQLクエリを実行する必要がある場合。彼らはクエリを2人のエンジニアに送信して実行させます。
本番データベースに対してコマンドを実行する必要がある状況は次のとおりです。
データベースには破損したデータが含まれているため、バグが発生します。バグを修正するコマンドを実行します。
バグが報告されています。また、データベース内の現在の値を確認したいと考えています。
ある顧客が自分のデータを変更したいと考えています。しかし、私たちのWebアプリケーションには変更を行う機能がありません。したがって、MySQLコマンドをデータベースに直接送信して、顧客の要件を完了する必要があります。
QAチームは、運用環境でテストアカウントを作成しました。また、他のテストを実行できるように、アカウントのステータスを変更したいと考えています。
これにより、他の同僚に多くの中断が生じます。日中にプログラムを開発する場合、クエリを実行するためだけにコンテキストを切り替える必要があることがよくあります。
これは会社にとって良いアーキテクチャではないと思います。会社の本番環境へのアクセス許可をどのように制御しますか?
私たちの生産データベースは、機密の顧客情報で構成されています。データが漏洩した場合、当社は数百万ドルの罰金を科される可能性があります。
how do I get devs to stop bugging me to run arbitrary SQL commands
です。ProxySQLを使用して機密の顧客データをマスクし、他の開発者が本番データベースを読み取ることができると思います。