programing

sql 읽기 전용 모드에서 연결 열기

batch 2023. 8. 29. 20:18
반응형

sql 읽기 전용 모드에서 연결 열기

사용자가 MySQL 데이터베이스에 대한 전체 읽기/쓰기 권한을 가지고 있다고 가정합니다.읽기 전용 모드에서 동일한 사용자 이름과 암호로 데이터베이스에 연결할 수 있는 방법(연결 문자열의 일부 매개 변수)이 있습니까?

동일한 사용자가 다른 때에도 쓰기 권한을 요구할 수 있으므로 이 사용자의 권한을 변경하지 않고 이 옵션을 사용합니다.이것은 데이터베이스가 실수로 수정되는 것을 방지하는 데 유용합니다(가능한 경우).

당신의 질문에 대한 대답은

아니요, 연결 문자열에 읽기 전용 액세스를 지정할 수 없습니다.

대안은 다음과 같습니다.

읽기 권한이 있는 sql 사용자 생성

MVC3 읽기 전용 MySql 연결 문자열

권한 검사 로직이 포함된 뷰 또는 저장 프로시저 만들기

MS SQL 보기에만 권한 부여

MySQL mysql 보기만 볼 수 있는 사용자 권한 부여

비즈니스 로직에 권한 계층 구현

행운을 빕니다.

여기서 가장 좋은 해결책은 읽기 전용 권한을 가진 다른 계정을 mysql 서버에 생성하고 이를 사용하여 연결하는 것입니다.

사용 사례와 사용 중인 컨트롤에 따라 연결 직후 "set transaction read only" 코드 호출을 수행하거나 연결 시 --init-command 매개 변수를 사용할 수 있습니다.이것은 우리가 가지고 있는 테스트 사용 사례에 효과가 있었습니다.

여기 세트 트랜잭션 문서가 있습니다. https://dev.mysql.com/doc/refman/5.7/en/set-transaction.html, 도 마찬가지로 세션 변수로 설정할 수 있습니다. https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_transaction_read_only 도 차이가 있을 경우 세션 변수로 설정할 수 있습니다.

언급URL : https://stackoverflow.com/questions/10240890/sql-open-connection-in-read-only-mode

반응형