>  기사  >  데이터 베이스  >  mysql에서 사용자에게 원격 권한을 부여하는 방법에 대한 모든 권한을 부여합니다.

mysql에서 사용자에게 원격 권한을 부여하는 방법에 대한 모든 권한을 부여합니다.

PHPz
PHPz앞으로
2023-05-26 22:04:172351검색

mysql은 사용자에게 원격 권한을 부여합니다.

mysql은 사용자에게 원격 권한을 부여합니다.

  • 테이블을 변경하는 방법.

계정이 원격 로그인을 허용하지 않고 로컬 호스트에만 연결할 수 있는 경우. 이때, 사용자 원격 로그인을 실현하려면 mysql 서버의 mysql 데이터베이스에 있는 사용자 테이블의 호스트 항목을 "localhost"에서 %로 변경하기만 하면 됩니다.

mysql이 설치된 머신에서 실행하세요:

1. mysql -u root -p

2. user='root'인 사용자에서 호스트, 사용자를 선택;

3. 사용자 설정 호스트 = '%', user='root' 및 호스트='localhost'; 4. user='root';

  • Authorization method

    [root@aaa-server ~]# mysql -u root -p
    MariaDB [(none)]> grant all privileges on *.* to root@'%' identified by '123' with grant option;
    Query OK, 0 rows affected (0.00 sec)
    MariaDB [(none)]> flush privileges;
    Query OK, 0 rows affected (0.01 sec)
    MariaDB [(none)]> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
    MariaDB [(none)]> exit
    Bye
  • Authorization method

  • 예를 들어, 사용자가 mypwd를 사용하도록 하려는 경우

mysql이 설치된 시스템에서 실행:

1. GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'mypwd' WITH
      GRANT OPTION;  
2.FLUSH   PRIVILEGES;
模板:
grant all privileges on 库名.表名 to '用户名'@'IP地址' identified by '密码' with grant option;
flush privileges;

    사용자 사용자가 IP 192.168.1.4를 사용하여 호스트에서 mysql 서버에 연결하도록 허용하고 다음과 같이 mypwd를 사용합니다. mysql이 설치된 머신의 비밀번호
  • 실행:
 GRANT ALL PRIVILEGES ON *.* TO 'user'@'192.168.1.3' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;   
 FLUSH   PRIVILEGES;

인증 후 FLUSH PRIVILEGES를 수행해야 합니다. 그렇지 않으면 즉시 적용되지 않습니다.

상위 버전 데이터베이스는 *에 대한 모든 권한 부여에 따라 사용자 권한을 수정할 수 없습니다. .* "xxxx"로 식별되는 "root"@"%";

mysql> SELECT @@VERSION;
+-----------+
| @@VERSION |
+-----------+
| 8.0.14    |
+-----------+
1 row in set (0.00 sec)

상위 버전에서 사용자 권한을 수정하는 방법:

# 先创建远程用户,再授权
mysql> create user 'root'@'%' identified by  'password';
Query OK, 0 rows affected (0.03 sec)
mysql> grant all privileges on *.* to 'root'@'%' with grant option;
Query OK, 0 rows affected (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

다시 확인하여 루트 %

mysql>  select User,Host from user;
+------------------+-----------+
| User             | Host      |
+------------------+-----------+
| root             | %         |
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+
5 rows in set (0.00 sec)
————————————————

mysql 인증 설명 설명 모든 권한 부여 , 사용자 생성, 사용자 삭제

mysql 승인문:

grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

    모든 권한 ==》 추가, 삭제, 수정, 쿼리 권한을 포함한 모든 권한이 모두 사용 가능함을 나타냅니다.
  • *.*                 == > 모든 데이터베이스의 모든 테이블
  • root@% ==》 모든 데이터베이스 테이블의 모든 권한은 루트 사용자에게 부여됩니다. %는 루트 사용자가 모든 컴퓨터에 연결하고 로그인할 수 있음을 의미합니다
  • 원격 로그인 연결에 사용되는 비밀번호는 "123456"입니다.
권한 목록 새로 고침: 권한 플러시

CREATE DATABASE 数据库名;
CREATE USER '用户名'@'%' IDENTIFIED BY '密码';    
GRANT all privileges ON 数据库名.* to '用户名'@'%' identified by '密码' WITH GRANT OPTION; 
flush privileges;
사용자 만들기: 'test123'으로 식별된 CREATE USER 'jack'@'localhost';

다음 사용자 보기 데이터베이스에서 생성됨: user,host from user;-사용자 테이블은 데이터베이스와 함께 제공됩니다.

mysql이라는 데이터베이스에서 사용자 삭제: user = 'jack'인 사용자에서 삭제

drop user ‘jack'@'%';

drop user; 사용자 정보는 모두 삭제되고, 삭제는 사용자 테이블만 삭제되며, db 테이블 등 기타 정보는 그대로 존재합니다.

캐시 지우기: 권한 플러시

위 내용은 mysql에서 사용자에게 원격 권한을 부여하는 방법에 대한 모든 권한을 부여합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제