>  기사  >  데이터 베이스  >  mysql에 사용자를 추가하는 방법

mysql에 사용자를 추가하는 방법

青灯夜游
青灯夜游원래의
2021-12-31 15:27:2012907검색

사용자를 추가하는 방법: 1. "CREATE USER user IDENTIFIED BY 'password';" 문을 사용합니다. 2. "GRANT priv_type ON Database.table TO user IDENTIFIED BY 'password';"를 사용합니다.

mysql에 사용자를 추가하는 방법

이 튜토리얼의 운영 환경: windows7 시스템, mysql8 버전, Dell G3 컴퓨터.

MySQL이 설치되면 기본적으로 root라는 사용자가 생성됩니다. 이 사용자는 슈퍼 권한을 가지며 전체 MySQL 서버를 제어할 수 있습니다.

MySQL의 일상적인 관리 및 운영에 있어서 누군가 루트 사용자를 악의적으로 이용하여 데이터베이스를 제어하는 ​​것을 방지하기 위해 일반적으로 적절한 권한을 가진 일부 사용자를 생성하고 루트 사용자를 사용하여 로그인하는 경우가 많습니다. 데이터 보안을 보장하기 위해 시스템에 접근합니다.

MySQL은 사용자 생성을 위해 다음과 같은 3가지 방법을 제공합니다.

  • CREATE USER 문을 사용하여 사용자 생성

  • mysql.user 테이블에 사용자 추가

  • GRANT 문을 사용하여 사용자 생성

다음은 이 3가지 방법을 자세히 설명합니다. 예시를 기반으로 합니다.

1. CREATE USER 문을 사용하여 사용자를 생성합니다.

CREATE USER 문을 사용하여 MySQL 사용자를 생성하고 해당 비밀번호를 설정할 수 있습니다. 기본 구문 형식은 다음과 같습니다.

CREATE USER <用户> [ IDENTIFIED BY [ PASSWORD ] &#39;password&#39; ] [ ,用户 [ IDENTIFIED BY [ PASSWORD ] &#39;password&#39; ]]

매개 변수 설명은 다음과 같습니다.

1) 사용자

는 사용자 계정을 생성하도록 지정하며 형식은 user_name'@'host_name입니다. 여기서 user_name은 사용자 이름이고, host_name은 사용자가 MySQL에 연결하는 데 사용하는 호스트 이름인 호스트 이름입니다. 생성 과정에서 호스트 이름을 지정하지 않고 사용자 이름만 지정한 경우 호스트 이름은 기본적으로 호스트 그룹을 나타내는 "%"로 지정됩니다. 즉, 모든 호스트에 권한이 열려 있습니다.

3) IDENTIFIED BY 절

은 사용자 비밀번호를 지정하는 데 사용됩니다. 신규 사용자는 초기 비밀번호가 필요하지 않습니다. 사용자가 비밀번호가 없으면 이 조항을 생략할 수 있습니다.

2) PASSWORD 'password'

PASSWORD는 해시 값을 사용하여 비밀번호를 설정하는 것을 의미합니다. 비밀번호가 일반 문자열인 경우 PASSWORD 키워드를 사용할 필요가 없습니다. 'password'는 사용자가 로그인하는 데 사용하는 비밀번호를 나타내며 작은따옴표로 묶어야 합니다.

CREATE USER 문을 사용할 때 다음 사항에 주의해야 합니다.

  • CREATE USER 문에는 초기 비밀번호를 지정할 필요가 없습니다. 그러나 보안 관점에서 이 접근 방식은 권장되지 않습니다.

  • CREATE USER 문을 사용하려면 mysql 데이터베이스에 대한 INSERT 권한이나 전역 CREATE USER 권한이 있어야 합니다.

  • CREATE USER 문을 사용하여 사용자를 생성한 후 MySQL은 mysql 데이터베이스의 사용자 테이블에 새 레코드를 추가합니다.

  • CREATE USER 문은 동시에 여러 사용자를 생성할 수 있습니다. 여러 사용자는 쉼표로 구분됩니다.

새로 생성된 사용자에게는 권한이 거의 없으며 권한이 필요하지 않은 작업만 수행할 수 있습니다. 예를 들어 MySQL에 로그인하고 SHOW 문을 사용하여 모든 스토리지 엔진 및 문자 집합 목록을 쿼리하는 등의 작업을 수행합니다. 두 명의 사용자가 동일한 사용자 이름을 가지고 있지만 호스트 이름이 다른 경우 MySQL은 이들을 두 명의 사용자로 간주하고 두 사용자에게 서로 다른 권한 집합을 할당할 수 있도록 허용합니다.

예제 1

CREATE USER를 사용하여 사용자를 생성합니다. 사용자 이름은 test1, 비밀번호는 test1, 호스트 이름은 localhost입니다. SQL문과 실행과정은 다음과 같다.

mysql> CREATE USER &#39;test1&#39;@&#39;localhost&#39; IDENTIFIED BY &#39;test1&#39;;
Query OK, 1 rows affected (0.06 sec)

결과는 test1 사용자가 성공적으로 생성되었음을 보여줍니다.

실제 응용에서는 일반 텍스트로 비밀번호를 지정하는 것을 피해야 합니다. PASSWORD 키워드를 사용하여 비밀번호의 해시 값을 사용하여 비밀번호를 설정할 수 있습니다.

예제 2

MySQL에서는 Password() 함수를 사용하여 비밀번호의 해시 값을 얻을 수 있습니다. test1 해시 값을 보기 위한 SQL 문 및 실행 프로세스는 다음과 같습니다.

mysql> SELECT password(&#39;test1&#39;);
+-------------------------------------------+
| password(&#39;test1&#39;)                         |
+-------------------------------------------+
| *06C0BF5B64ECE2F648B5F048A71903906BA08E5C |
+-------------------------------------------+
1 row in set, 1 warning (0.00 sec)

"*06C0BF5B64ECE2F648B5F048A71903906BA08E5C "는 test1 값의 해시입니다. 다음으로 test1이라는 사용자를 생성합니다. SQL 문 및 실행 과정은 다음과 같습니다.

mysql> CREATE USER &#39;test1&#39;@&#39;localhost&#39;IDENTIFIED BY PASSWORD &#39;*06C0BF5B64ECE2F648B5F048A71903906BA08E5C&#39;;
Query OK, 0 rows affected, 1 warning (0.00 sec)

실행 성공 후 비밀번호 "test1"로 로그인할 수 있습니다.

2. GRANT 문을 사용하여 새로운 사용자를 생성합니다

CREATE USER는 일반 사용자를 생성할 수 있지만, 이 방법은 사용자 권한을 부여하기에는 불편합니다. 그래서 MySQL은 GRANT 문을 제공합니다.

사용자를 생성하기 위해 GRANT 문을 사용하는 기본 문법 형식은 다음과 같습니다.

GRANT priv_type ON database.table TO <用户> [IDENTIFIED BY [PASSWORD] &#39;password&#39;]

여기서:

  • priv_type 매개변수는 새 사용자의 권한을 나타냅니다.

  • database.table 매개변수 새 사용자의 권한 범위를 나타냅니다. 즉, 지정된 데이터베이스 및 테이블에 대해서만 자신의 권한을 사용할 수 있습니다.

  • 4c8e0c17c3bd7e0081bb17cc795e1984 매개변수는 사용자 이름과 이름으로 구성된 새 사용자의 계정을 지정합니다. 호스트 이름, 비밀번호를 설정하는

  • IDENTIFIED BY 키워드

  • password 매개변수는 새 사용자의 비밀번호를 나타냅니다.

예제 3

다음은 GRANT 문을 사용하여 test3이라는 사용자를 생성합니다. 호스트 이름은 localhost이고 암호는 test3입니다. 이 사용자는 모든 데이터베이스의 모든 테이블에 대한 SELECT 권한을 갖습니다. SQL 문 및 실행 과정은 다음과 같습니다.

mysql> GRANT SELECT ON*.* TO &#39;test3&#39;@localhost IDENTIFIED BY &#39;test3&#39;;
Query OK, 0 rows affected, 1 warning (0.01 sec)

其中,“*.*” 表示所有数据库下的所有表。结果显示创建用户成功,且 test3 用户对所有表都有查询(SELECT)权限。

技巧:GRANT 语句是 MySQL 中一个非常重要的语句,它可以用来创建用户、修改用户密码和设置用户权限。教程后面会详细介绍如何使用 GRANT 语句修改密码、更改权限。

【相关推荐:mysql视频教程

위 내용은 mysql에 사용자를 추가하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.