mysql에서 새로운 권한을 생성하고 비밀번호를 설정하는 방법

藏色散人
풀어 주다: 2020-10-23 09:48:03
원래의
3023명이 탐색했습니다.

mysql에서 새 권한에 대한 비밀번호를 설정하는 방법: 먼저 CREATE USER 명령을 통해 사용자를 생성한 다음 GRANT 명령을 사용하여 승인하고 마지막으로 SET PASSWORD 명령을 통해 사용자 비밀번호를 설정 및 변경합니다.

mysql에서 새로운 권한을 생성하고 비밀번호를 설정하는 방법

권장: "mysql 비디오 튜토리얼"

MySQL 사용자 생성 및 인증

1. 사용자 생성

명령:

CREATE USER 'username'@'host' IDENTIFIED BY 'password';
로그인 후 복사

지침:

사용자 이름: 생성할 사용자 이름

host : 사용자가 로그인할 수 있는 호스트를 지정합니다. 로컬 사용자인 경우 localhost를 사용할 수 있습니다. 사용자가 원격 호스트에서 로그인하도록 하려면 와일드카드 %

password를 사용할 수 있습니다. 사용자의 로그인 비밀번호입니다. . 비밀번호가 비어 있을 수 있습니다. 비어 있으면 사용자는 비밀번호 없이 서버에 로그인할 수 있습니다. SELECT, INSERT, UPDATE 등의 권한을 부여하려면 ALL

databasename: 데이터베이스 이름

tablename: 테이블 이름을 사용합니다. 모든 데이터베이스 및 테이블에 대한 해당 운영 권한을 사용자에게 부여합니다. , *를 사용하여 *.*

예:

CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
CREATE USER 'pig'@'%';
로그인 후 복사

참고:

위 명령으로 권한이 부여된 사용자는 다른 사용자에게 권한을 부여할 수 없습니다. 다음 명령:

GRANT privileges ON databasename.tablename TO 'username'@'host'
로그인 후 복사

3. 사용자 비밀번호 설정 및 변경

명령:

GRANT SELECT, INSERT ON test.user TO 'pig'@'%';
GRANT ALL ON *.* TO 'pig'@'%';
GRANT ALL ON maindataplus.* TO 'pig'@'%';
로그인 후 복사

현재 로그인한 사용자인 경우 사용:

GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;
로그인 후 복사

예:

SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
로그인 후 복사

사용자 권한 취소

명령:

SET PASSWORD = PASSWORD("newpassword");
로그인 후 복사

설명:

privilege, 데이터베이스 이름, 테이블 이름: 인증 부분과 동일

예:

SET PASSWORD FOR 'pig'@'%' = PASSWORD("123456");
로그인 후 복사

참고:

사용자 'pig'@'%'가 인증되면 다음과 같습니다(또는 유사합니다). ): GRANT SELECT ON test.user TO 'pig'@'%', 그런 다음 REVOKE SELECT ON *.* FROM 'pig'@' %' 명령은 테스트 데이터베이스의 사용자 테이블에서 사용자의 SELECT 작업을 실행 취소할 수 없습니다. . 반대로 권한 부여가 GRANT SELECT ON *.* TO 'pig'@'%';를 사용하는 경우 REVOKE SELECT ON test.user FROM 'pig'@'%'; 명령은 사용자의 액세스 권한을 취소할 수 없습니다. 테스트 데이터베이스의 사용자 테이블에 권한을 선택합니다.

자세한 정보는 SHOW GRANTS FOR 'pig'@'%'; 명령을 사용하여 볼 수 있습니다.

5. 사용자 삭제

명령어:

REVOKE privilege ON databasename.tablename FROM 'username'@'host';
로그인 후 복사

오늘 개발중에 Centos7에 MySQL5.6 버전을 설치한 후 테이블에 새로운 weicheng 계정을 생성하고 비밀번호를 설정했는데, 제가 사용하고 있는 것은 weicheng 계정 mysql에 로그인할 때 "mysql -uweicheng -p"를 사용하여 로그인하면 오류가 발생하고, 비밀번호가 맞아도 로그인이 안되는 현상을 발견했습니다. 비밀번호를 입력하지 않고 "mysql -uweicheng"을 사용하여 직접 로그인하세요.

나중에 데이터를 쿼리하는 이유는 데이터베이스에 빈 사용자가 있어야 하기 때문입니다. 그렇다면

REVOKE SELECT ON *.* FROM 'pig'@'%';
로그인 후 복사

를 사용하여 있는지 확인한 다음

DROP USER 'username'@'host';
로그인 후 복사

를 사용하여 중복된 빈 계정을 삭제한 다음

select * from mysql.user where user='';
로그인 후 복사

를 사용하여 권한 테이블을 다시 로드합니다. 마지막으로

use mysql;
delete from user where user = '';
로그인 후 복사

를 사용하여 mysql 서비스를 다시 시작합니다. 이제 문제가 해결되었습니다.

팁:

1. mysql 서비스를 다시 시작해야 한다는 점을 기억하세요. 그렇지 않으면 msyql을 다시 시작하지 않았기 때문에 문제가 해결되지 않습니다.

2. msyql의 user 테이블은 mysql 데이터베이스의 user 테이블에 있으며, 주요 필드는 mysql에서 관리하는 데 사용되는 주요 테이블입니다.

mysql 새로 고침 권한 명령: FLUSH PRIVILEGES; (일반적으로 데이터베이스 사용자 정보가 업데이트된 후에 사용됨)

mysql 서버를 다시 시작하는 또 다른 방법이 있습니다

위 내용은 mysql에서 새로운 권한을 생성하고 비밀번호를 설정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿