MySQL 에서 비밀번호 변경 및 접근 제한 설정 방법 에 대한 자세 한 설명

소스 코드 의 개방 성과 안정성 으로 인해 사이트 유행 편 과 아메리슘 PHP 의 완벽 한 결합 으로 현재 많은 사이트 들 이 이 를 백 엔 드 데이터베이스 로 활용 하여 광범 위 하 게 응용 되 고 있다.안전 을 고려 할 때 모든 사용자 에 게 서로 다른 데이터 베이스 에 대한 방문 제한 을 부여 하여 서로 다른 사용자 의 요 구 를 만족 시 켜 야 한다.다음은 각자 토론 하여 여러분 이 참고 하도록 제공 하 겠 습 니 다.     1.MySQL 암호 수정 방법 요약  먼저 설명 하고 자 하 는 것 은:일반적인 상황 에서 MySQL 비밀 번 호 를 수정 하려 면 mysql 의 루트 권한 이 있어 야 합 니 다.그러면 일반 사용 자 는 관리자 에 게 수정 을 요청 하지 않 는 한 비밀 번 호 를 변경 할 수 없습니다.     방법 1     phpMyAdmin 사용 하기  (MySql 데이터 베 이 스 를 도형 화 관리 하 는 도구)가장 간단 합 니 다.mysql 데이터베이스 라 이브 러 리 의 user 표를 SQL 문장 으로 직접 수정 하지만 PASSWORD 함 수 를 사용 하고 사용자 용 Insert 명령 을 삽입 하 며 사용자 용 Update 명령 을 수정 하고 Delete 명령 을 삭제 하 는 것 을 잊 지 마 세 요.이 절 뒤에 데이터 시트 user 필드 에 대한 상세 한 소개 가 있 습 니 다.     방법 2     my sqladmin 을 사용 합 니 다.입력      mysqladmin -u root -p oldpassword newpasswd     이 명령 을 실행 한 후 루트 의 원래 암 호 를 입력 해 야 합 니 다.루트 의 암 호 는 new passwd 로 변 경 됩 니 다.마찬가지 로 명령 의 루트 를 사용자 이름 으로 바 꾸 면 비밀 번 호 를 바 꿀 수 있 습 니 다.  물론 당신 의 my sqladmin 이 my sql 에 연결 되 지 않 는 다 면  server,또는 my sqladmin 을 실행 할 수 없습니다.그러면 이 방법 은 무효 입 니 다.그리고 my sqladmin 은 비밀 번 호 를 비 울 수 없습니다.     아래 방법 은 모두 my sql 프롬프트 에서 사용 되 며,my sql 의 root 권한 이 있어 야 합 니 다:     방법       mysql> INSERT INTO mysql.user (Host,User,Password) VALUES    ('%','system', PASSWORD('manager'));    mysql> FLUSH PRIVILEGES     정확히 말 하면 사용자 이름 은 system 이 고 비밀 번 호 는 manager 입 니 다.PASSWORD 함 수 를 사용 하고 FLUSH 를 사용 해 야 합 니 다.  PRIVILEGES 가 확인 을 수행 합 니 다.     방법     방법 3 과 마찬가지 로 REPLACE 문 구 를 사 용 했 을 뿐 입 니 다.    mysql> REPLACE INTO mysql.user (Host,User,Password)    VALUES('%','system',PASSWORD('manager'));    mysql> FLUSH PRIVILEGES    방법     SET 사용 PASSWORD 구문       mysql> SET PASSWORD FOR system@"%" = PASSWORD('manager');     너 도 PASSWORD()함 수 를 사용 해 야 하지만,FLUSH 를 사용 할 필요 가 없다 PRIVILEGES 가 확인 을 수행 합 니 다.     방법     GRANT 사용 ... IDENTIFIED BY 문 구 를 사용 하여 권한 을 부여 합 니 다.       mysql> GRANT USAGE ON *.* TO system@"%" IDENTIFIED BY 'manager';     여기 PASSWORD()함 수 는 불필요 하 며 FLUSH 를 사용 할 필요 도 없습니다. PRIVILEGES 가 확인 을 수행 합 니 다.     주:PASSWORD()함수 의 역할 은 암호 화 입 니 다.프로그램 에서 MySql 이 자동 으로 해 석 됩 니 다.    2.MySql 에서 접근 제한 설정 방법  우 리 는 두 가지 방법 으로 사용 자 를 설정한다.  Mysql 실행 디 렉 터 리 에 들 어 갑 니 다.mysqld-shareware.exe 입력,mysql 입력    --user=root mysql ,그렇지 않 으 면 새 사용 자 를 추가 할 수 없습니다.my sql>프롬프트 에 들 어가 조작 합 니 다.     만약 에 우리 가 슈퍼 사용 자 를 만 들 려 고 한다 면 사용자 이름 은 system 이 고 사용자 암 호 는 manager 입 니 다.    방법 1    Grant 로 명령 권한 부여,입력 한 코드 는 다음 과 같 습 니 다:    mysql>GRANT ALL PRIVILEGES ON *.* TO system@localhost IDENTIFIED BY    'manager' WITH GRANT OPTION;     표시 할 항목:Query OK, 0 rows affected (0.38 sec)     방법 2     사용자 의 모든 권한 을 설정 합 니 다:       mysql>INSERT INTO user    VALUES('localhost','system',PASSWORD('manager'),    'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');  3.22.34 버 전의 MySQL 에 대해 여 기 는 모두 14 개의"Y"이 고 그 에 상응하는 권한 은 다음 과 같다(필드 순서대로 배열).     권한 표 열 이름 상응하는 해석 사용 범위    select Select_priv 한 표 에서 검색 할 때 만 select 권한 이 필요 합 니 다. 시계.    insert Insert_priv 존재 하 는 표 에 새 줄 을 삽입 할 수 있 도록 합 니 다. 시계.    update Update_priv 기 존 표 의 줄 을 새 값 으로 업데이트 할 수 있 도록 합 니 다. 시계.    delete Delete_priv 조건 에 맞 는 줄 을 삭제 할 수 있 도록 합 니 다. 시계.    create Create_priv 새 데이터베이스 와 표를 만 들 수 있 도록 합 니 다. 데이터베이스,테이블 또는 인덱스    drop Drop_priv 기 존 데이터베이스 와 테이블 버 리 기 데이터베이스 또는 테이블    reload Reload_priv 서버 에 권한 수여 표를 다시 읽 으 라 고 알려 줍 니 다. 서버 관리    shutdown Shutdown_priv 남 용 될 수 있 습 니 다.(서버 종 료 를 통 해 다른 사용자 에 게 서 비 스 를 거부 합 니 다) 서버 관리    process Process_priv 현재 실행 중인 쿼 리 의 일반 텍스트 를 볼 수 있 습 니 다.암 호 를 설정 하거나 변경 하 는 것 을 포함 합 니 다. 서버 관리    file File_priv 서버 에서 읽 을 수 있 는 모든 파일 을 데이터베이스 시트 로 읽 을 수 있 는 권한 이 남용 되 었 습 니 다. 서버 의 파일 액세스    grant Grant_priv 당신 이 가지 고 있 는 권한 을 다른 사용자 에 게 부여 할 수 있 도록 허락 합 니 다. 데이터베이스 또는 테이블    references References_priv 기록 파일 을 열 고 닫 을 수 있 도록 합 니 다. 데이터베이스 또는 테이블    index Index_priv 색인 을 만 들 거나 버 릴 수 있 도록 합 니 다. 시계.    alter Alter_priv 표 변경 을 허용 합 니 다.표 이름 바 꾸 기 를 통 해 권한 시스템 을 뒤 집 을 수 있 습 니 다. 시계.    사용 자 를 만 들 때 select,insert,update,delete 권한 만 있 으 면 데이터베이스 에 있 는 표 에서 만 작업 할 수 있 습 니 다.  다음은 우리 가 사용 할 데이터 베 이 스 를 만 들 수 있 습 니 다.우 리 는 직접 입력 합 니 다. 예 를 들 어 저 희 는 데이터 베 이 스 를 XinXiKu 라 고 만 들 려 고 합 니 다.다음 코드 를 사용 할 수 있 습 니 다.      mysql>create database XinXiKu;     표시 할 항목:Query OK, 1 row affected (0.00 sec)

좋은 웹페이지 즐겨찾기