mysql3.2 을 쓰고 있습니다.
최상위 권한을 갖는 DB admin도 접근 할 수 없는 테이블을 생성할 수 있는지에 대한 질문입니다.
목적은 특정테이블을 특정사용자만 관리하고 볼 수 있게 할려는 건데요..
다른 방안이 있는지...ㅡ.ㅡ
궁금합니다. 빠른답변 부탁드릴께요..
mysql 디비의 table_priv 와 columns_priv테이블이 바로 그런용도의 권한테이블입니다.
http://www.mysql.com/doc/P/r/Privileges.html
이페이지를 참고하세요...흠..근데 잘 안돼는것 같더군요 (제 머리가 나쁜탓인지 흐흐 모르겟네영) f.rocka.
MySQL의 권한 인증 시스템을 이해하시면, 백록화님한 것이 왜 잘 안 되는지 알 수 있습니다. ^^
권한을 검사할 때, 검색하는 테이블의 순서가 있죠.
일단 user Table을 검색해서, 해당 권한이 'Y'이면, 나머지 테이블에서 'N'이라도 무조건 해당 권한이 있는 것입니다.
>> 다른 방안이 있는지...ㅡ.ㅡ
앞의 글을 이해하였으면 방법을 생각할 수 있습니다.
User Table에서 root의 권한을 모두 'N'으로 해 두고, 다른 권한 테이블에서 root도 못 읽게 하는 DB나 테이블만 'N'으로 놔두고, 다른 모든 DB나 테이블은 'Y'값을 주면 되죠.
하지만, 무척이나 귀찮은 작업입니다.
아니면, root는 DB Start, Shutdown 등등의 권한만을 주면 되겠죠. 이게 훨씬 편하겠네요 ^^