Hướng dẫn mysql invoice database example - ví dụ về cơ sở dữ liệu hóa đơn mysql
Ở bài viết trước hướng dẫn các bạn cách sao chép dữ liệu của bảng. Trong bài viết này sẽ hướng dẫn các bạn sao chép database trong cùng 1 server hoặc từ 2 server khác nhau. Nội dung chính ShowShow Sao chép database trong cùng serverBước 1. Tạo mới database classmodels_backup:
Bước 1: Export database classicmodels ra file db.sql. Bước 1. Tạo mới database classmodels_backup:Bước 2: Sử dụng mysqldump để xuất dữ liệu
Bước 3: Import file d:\db\classicmodels.sql vào database classicmodels_backup.
Sao chép database từ 2 server khác nhau Bước 1: Export database classicmodels ra file db.sql.
Bước 2: Sử dụng mysqldump để xuất dữ liệuBước 3: Import file d:\db\classicmodels.sql vào database classicmodels_backup.
Sao chép database từ 2 server khác nhau Bước 3: Import file d:\db\classicmodels.sql vào database classicmodels_backup.
Sao chép database từ 2 server khác nhau Bước 1: Export database classicmodels ra file db.sql.
Bước 1: Export database classicmodels ra file db.sql.
Sao chép database từ 2 server khác nhauBước 1: Export database classicmodels ra file db.sql.
Tạo mới database bằng lệnh 2Bước 1: Export database classicmodels ra file db.sql.
Bước 2: Giả sử file SQL db.sql được copy vào thư mục c:\tmp\ của server đích. Bước 3: Import file SQL
Bước 2: Giả sử file SQL db.sql được copy vào thư mục c:\tmp\ của server đích.Bước 3: Import file SQL
Các bước để sao chép database: Tạo mới database bằng lệnh 2Sử dụng >mysqldump -u root -p classicmodels > d:\db\classicmodels.sql
Enter password: **********
|
Đặc quyền | Ý nghĩa và mức độ có thể cấp |
---|---|
27 | Cấp tất cả các đặc quyền ở cấp truy cập được chỉ định ngoại trừ 8 và 29. |
30 | Cho phép sử dụng 31. Cấp độ: Toàn cầu, cơ sở dữ liệu, bảng. |
32 | Cho phép các thói quen được lưu trữ được thay đổi hoặc bỏ. Cấp độ: Toàn cầu, cơ sở dữ liệu, thói quen. |
33 | Bật cơ sở dữ liệu và tạo bảng. Cấp độ: Toàn cầu, cơ sở dữ liệu, bảng. |
34 | Cho phép tạo vai trò. Cấp độ: Toàn cầu. |
35 | Cho phép tạo ra thường xuyên được lưu trữ. Cấp độ: Toàn cầu, cơ sở dữ liệu. |
36 | Kích hoạt các không gian bảng và các nhóm tệp nhật ký được tạo, thay đổi hoặc bỏ. Cấp độ: Toàn cầu. |
37 | Cho phép sử dụng 38. Cấp độ: Toàn cầu, cơ sở dữ liệu. |
9 | Cho phép sử dụng 9, 41, 42 và 43. Cấp độ: Toàn cầu. |
44 | Cho phép các chế độ xem được tạo hoặc thay đổi. Cấp độ: Toàn cầu, cơ sở dữ liệu, bảng. |
45 | Cho phép sử dụng 45. Cấp độ: Toàn cầu, cơ sở dữ liệu, bảng. |
47 | Bật cơ sở dữ liệu, bảng và lượt xem được bỏ. Cấp độ: Toàn cầu, cơ sở dữ liệu, bảng. |
48 | Cho phép các vai trò được bỏ. Cấp độ: Toàn cầu. |
49 | Cho phép sử dụng các sự kiện cho Trình lập lịch sự kiện. Cấp độ: Toàn cầu, cơ sở dữ liệu. |
50 | Cho phép người dùng thực hiện các thói quen được lưu trữ. Cấp độ: Toàn cầu, cơ sở dữ liệu, thói quen. |
51 | Cho phép người dùng khiến máy chủ đọc hoặc ghi tệp. Cấp độ: Toàn cầu. |
8 | Cho phép các đặc quyền được cấp hoặc xóa khỏi các tài khoản khác. Cấp độ: Toàn cầu, cơ sở dữ liệu, bảng, thói quen, proxy. |
53 | Cho phép các chỉ mục được tạo hoặc bỏ. Cấp độ: Toàn cầu, cơ sở dữ liệu, bảng. |
54 | Cho phép sử dụng 54. Cấp độ: Toàn cầu, cơ sở dữ liệu, bảng, cột. |
56 | Cho phép sử dụng 56 trên các bảng mà bạn có đặc quyền 58. Cấp độ: Toàn cầu, cơ sở dữ liệu. |
59 | Cho phép người dùng xem tất cả các quy trình với 60. Cấp độ: Toàn cầu. |
29 | Bật proxy người dùng. Cấp độ: Từ người dùng đến người dùng. |
62 | Cho phép tạo khóa nước ngoài. Cấp độ: Toàn cầu, cơ sở dữ liệu, bảng, cột. |
63 | Cho phép sử dụng các hoạt động 64. Cấp độ: Toàn cầu. |
65 | Cho phép người dùng hỏi nơi máy chủ nguồn hoặc bản sao đang ở. Cấp độ: Toàn cầu. |
66 | Cho phép các bản sao đọc các sự kiện nhật ký nhị phân từ nguồn. Cấp độ: Toàn cầu. |
58 | Cho phép sử dụng 58. Cấp độ: Toàn cầu, cơ sở dữ liệu, bảng, cột. |
69 | Bật 69 để hiển thị tất cả các cơ sở dữ liệu. Cấp độ: Toàn cầu. |
71 | Cho phép sử dụng 72. Cấp độ: Toàn cầu, cơ sở dữ liệu, bảng. |
73 | Cho phép sử dụng tắt máy mysqladmin. Cấp độ: Toàn cầu.mysqladmin shutdown. Level: Global. |
4 | Cho phép sử dụng các hoạt động hành chính khác như 75, 76, 77, 78, 79 và lệnh gỡ lỗi MySqladmin. Cấp độ: Toàn cầu.mysqladmin debug command. Level: Global.
|
80 | Bật hoạt động kích hoạt. Cấp độ: Toàn cầu, cơ sở dữ liệu, bảng. |
9 | Cho phép sử dụng 9. Cấp độ: Toàn cầu, cơ sở dữ liệu, bảng, cột. |
83 | Từ đồng nghĩa với "không có đặc quyền"“no privileges” |
Một kích hoạt được liên kết với một bảng. Để tạo hoặc thả trình kích hoạt, bạn phải có đặc quyền
> CREATE DATABASE classicmodels_backup;
80 cho bảng, không phải là trình kích hoạt.Trong các tuyên bố
>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
7, đặc quyền > CREATE DATABASE classicmodels_backup;
86 hoặc > CREATE DATABASE classicmodels_backup;
29 phải được đặt tên bởi chính nó và không thể được chỉ định cùng với các đặc quyền khác. > CREATE DATABASE classicmodels_backup;
86 là viết tắt của tất cả các đặc quyền có sẵn cho cấp độ mà các đặc quyền sẽ được cấp ngoại trừ các đặc quyền > SHOW TABLES FROM classicmodels_backup;
8 và > CREATE DATABASE classicmodels_backup;
29.Thông tin tài khoản MySQL được lưu trữ trong các bảng của lược đồ hệ thống
+--------------------------------+
| Tables_in_classicmodels_backup |
+--------------------------------+
| customers |
| employees |
| offices |
| orderdetails |
| orders |
| payments |
| productlines |
| products |
+--------------------------------+
8 rows in set (0.01 sec)
0. Để biết thêm chi tiết, hãy tham khảo Phần & NBSP; 6.2, Kiểm soát truy cập và quản lý tài khoản, trong đó thảo luận về lược đồ hệ thống +--------------------------------+
| Tables_in_classicmodels_backup |
+--------------------------------+
| customers |
| employees |
| offices |
| orderdetails |
| orders |
| payments |
| productlines |
| products |
+--------------------------------+
8 rows in set (0.01 sec)
0 và hệ thống kiểm soát truy cập rộng rãi.Nếu các bảng cấp giữ các hàng đặc quyền chứa cơ sở dữ liệu trường hợp hỗn hợp hoặc tên bảng và biến hệ thống
> CREATE DATABASE classicmodels_backup;
93 được đặt thành giá trị khác, +--------------------------------+
| Tables_in_classicmodels_backup |
+--------------------------------+
| customers |
| employees |
| offices |
| orderdetails |
| orders |
| payments |
| productlines |
| products |
+--------------------------------+
8 rows in set (0.01 sec)
6 không thể được sử dụng để thu hồi các đặc quyền này. Nó là cần thiết trong các trường hợp như vậy để thao tác trực tiếp các bảng cấp. .Các đặc quyền có thể được cấp ở một số cấp độ, tùy thuộc vào cú pháp được sử dụng cho mệnh đề
> SHOW TABLES FROM classicmodels_backup;
3. Đối với +--------------------------------+
| Tables_in_classicmodels_backup |
+--------------------------------+
| customers |
| employees |
| offices |
| orderdetails |
| orders |
| payments |
| productlines |
| products |
+--------------------------------+
8 rows in set (0.01 sec)
6, cú pháp > SHOW TABLES FROM classicmodels_backup;
3 tương tự chỉ định các đặc quyền để xóa.Đối với các cấp độ toàn cầu, cơ sở dữ liệu, bảng và thông thường,
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
01 chỉ gán các đặc quyền tồn tại ở cấp độ bạn đang cấp. Ví dụ: ________ 202.* là một câu lệnh cấp cơ sở dữ liệu, do đó, nó không cấp bất kỳ đặc quyền chỉ dành cho toàn cầu nào như > CREATE DATABASE classicmodels_backup;
51. Cấp +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
04 không gán đặc quyền > SHOW TABLES FROM classicmodels_backup;
8 hoặc > CREATE DATABASE classicmodels_backup;
29.Điều khoản
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
07, nếu có, nên được chỉ định là +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
08, +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
09 hoặc +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
10 khi đối tượng sau là bảng, hàm được lưu trữ hoặc quy trình được lưu trữ.Các đặc quyền mà người dùng giữ cho cơ sở dữ liệu, bảng, cột hoặc thói quen được hình thành một cách phụ thuộc dưới dạng
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
11 logic của các đặc quyền tài khoản ở mỗi cấp đặc quyền, bao gồm cả cấp độ toàn cầu. Không thể từ chối một đặc quyền được cấp ở cấp độ cao hơn do không có đặc quyền đó ở cấp độ thấp hơn. Ví dụ: Tuyên bố này cấp cho các đặc quyền > CREATE DATABASE classicmodels_backup;
58 và > CREATE DATABASE classicmodels_backup;
54 trên toàn cầu:> CREATE DATABASE classicmodels_backup;
6Các đặc quyền được cấp toàn cầu áp dụng cho tất cả các cơ sở dữ liệu, bảng và cột, mặc dù không được cấp ở bất kỳ cấp thấp nào.
Kể từ MySQL 8.0.16, có thể từ chối rõ ràng một đặc quyền được cấp ở cấp độ toàn cầu bằng cách thu hồi nó cho các cơ sở dữ liệu cụ thể, nếu biến hệ thống ____101 được bật:
> CREATE DATABASE classicmodels_backup;
7Kết quả của các tuyên bố trước đó là
> CREATE DATABASE classicmodels_backup;
58 áp dụng trên toàn cầu cho tất cả các bảng, trong khi > CREATE DATABASE classicmodels_backup;
54 và > SHOW TABLES FROM classicmodels_backup;
9 áp dụng trên toàn cầu ngoại trừ các bảng trong +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
18. Truy cập tài khoản vào +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
18 chỉ được đọc.Chi tiết về quy trình kiểm tra đặc quyền được trình bày trong Phần & NBSP; 6.2.7, Kiểm soát truy cập, Giai đoạn 2: Yêu cầu Xác minh.
Nếu bạn đang sử dụng các đặc quyền bảng, cột hoặc thường xuyên cho ngay cả một người dùng, máy chủ sẽ kiểm tra bảng, cột và đặc quyền thường xuyên cho tất cả người dùng và điều này làm chậm MySQL một chút. Tương tự, nếu bạn giới hạn số lượng truy vấn, cập nhật hoặc kết nối cho bất kỳ người dùng nào, máy chủ phải theo dõi các giá trị này.
MySQL cho phép bạn cấp các đặc quyền trên cơ sở dữ liệu hoặc bảng không tồn tại. Đối với các bảng, các đặc quyền được cấp phải bao gồm đặc quyền
> CREATE DATABASE classicmodels_backup;
33. Hành vi này là theo thiết kế và được dự định để cho phép quản trị viên cơ sở dữ liệu chuẩn bị tài khoản người dùng và đặc quyền cho cơ sở dữ liệu hoặc bảng sẽ được tạo sau đó.This behavior is by design, and is intended to enable the database administrator to prepare user accounts and privileges for databases or tables that are to be created at a later time. Quan trọng
MySQL không tự động thu hồi bất kỳ đặc quyền nào khi bạn bỏ cơ sở dữ liệu hoặc bảng. Tuy nhiên, nếu bạn bỏ một thói quen, bất kỳ đặc quyền cấp thói quen nào được cấp cho thói quen đó đều bị thu hồi.. However, if you drop a routine, any routine-level privileges granted for that routine are revoked.
Đặc quyền toàn cầu
Các đặc quyền toàn cầu là hành chính hoặc áp dụng cho tất cả các cơ sở dữ liệu trên một máy chủ nhất định. Để gán các đặc quyền toàn cầu, hãy sử dụng cú pháp
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
21:> CREATE DATABASE classicmodels_backup;
8
> CREATE DATABASE classicmodels_backup;
36, +--------------------------------+
| Tables_in_classicmodels_backup |
+--------------------------------+
| customers |
| employees |
| offices |
| orderdetails |
| orders |
| payments |
| productlines |
| products |
+--------------------------------+
8 rows in set (0.01 sec)
9, > CREATE DATABASE classicmodels_backup;
51, > CREATE DATABASE classicmodels_backup;
59, > CREATE DATABASE classicmodels_backup;
63, > CREATE DATABASE classicmodels_backup;
65, > CREATE DATABASE classicmodels_backup;
66, > CREATE DATABASE classicmodels_backup;
69, > CREATE DATABASE classicmodels_backup;
73 và +--------------------------------+
| Tables_in_classicmodels_backup |
+--------------------------------+
| customers |
| employees |
| offices |
| orderdetails |
| orders |
| payments |
| productlines |
| products |
+--------------------------------+
8 rows in set (0.01 sec)
4 Đặc quyền tĩnh là hành chính và chỉ có thể được cấp trên toàn cầu.Các đặc quyền năng động đều là toàn cầu và chỉ có thể được cấp trên toàn cầu.
Các đặc quyền khác có thể được cấp trên toàn cầu hoặc ở cấp độ cụ thể hơn.
Hiệu quả của
> SHOW TABLES FROM classicmodels_backup;
8 được cấp ở cấp độ toàn cầu khác nhau đối với các đặc quyền tĩnh và động:
8 được cấp cho bất kỳ đặc quyền toàn cầu tĩnh nào áp dụng cho tất cả các đặc quyền toàn cầu tĩnh.> SHOW TABLES FROM classicmodels_backup;
8 được cấp cho bất kỳ đặc quyền động nào chỉ áp dụng cho đặc quyền động đó.> SHOW TABLES FROM classicmodels_backup;
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
01 ở cấp độ toàn cầu cấp tất cả các đặc quyền toàn cầu tĩnh và tất cả các đặc quyền động hiện đã đăng ký. Một đặc quyền động được đăng ký sau khi thực hiện tuyên bố >mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
7 không được cấp hồi tố cho bất kỳ tài khoản nào.MySQL lưu trữ các đặc quyền toàn cầu trong bảng hệ thống
>mysqldump -u root -p --databases classicmodels > d:\db\db.sql
Enter password: **********
8.Đặc quyền cơ sở dữ liệu
Các đặc quyền cơ sở dữ liệu áp dụng cho tất cả các đối tượng trong một cơ sở dữ liệu nhất định. Để gán các đặc quyền cấp cơ sở dữ liệu, hãy sử dụng ____ 238.* Cú pháp:
> CREATE DATABASE classicmodels_backup;
9Nếu bạn sử dụng cú pháp
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
39 (thay vì +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
21), các đặc quyền được gán ở cấp cơ sở dữ liệu cho cơ sở dữ liệu mặc định. Một lỗi xảy ra nếu không có cơ sở dữ liệu mặc định.
> CREATE DATABASE classicmodels_backup;
33, > CREATE DATABASE classicmodels_backup;
47, > CREATE DATABASE classicmodels_backup;
49, > SHOW TABLES FROM classicmodels_backup;
8, > CREATE DATABASE classicmodels_backup;
56 và > CREATE DATABASE classicmodels_backup;
62 có thể được chỉ định ở cấp cơ sở dữ liệu. Bảng hoặc đặc quyền thường xuyên cũng có thể được chỉ định ở cấp cơ sở dữ liệu, trong trường hợp đó chúng áp dụng cho tất cả các bảng hoặc thói quen trong cơ sở dữ liệu.MySQL lưu trữ các đặc quyền cơ sở dữ liệu trong bảng hệ thống
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
47.Đặc quyền bảng
Đặc quyền bảng áp dụng cho tất cả các cột trong một bảng nhất định. Để gán các đặc quyền cấp bảng, hãy sử dụng cú pháp
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
48:+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
0Nếu bạn chỉ định
> CREATE DATABASE classicmodels_backup;
00 thay vì +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
50, câu lệnh áp dụng cho > CREATE DATABASE classicmodels_backup;
00 trong cơ sở dữ liệu mặc định. Một lỗi xảy ra nếu không có cơ sở dữ liệu mặc định.Các giá trị
> CREATE DATABASE classicmodels_backup;
24 cho phép ở cấp bảng là > CREATE DATABASE classicmodels_backup;
30, > CREATE DATABASE classicmodels_backup;
44, > CREATE DATABASE classicmodels_backup;
33, > CREATE DATABASE classicmodels_backup;
45, > CREATE DATABASE classicmodels_backup;
47, > SHOW TABLES FROM classicmodels_backup;
8, > CREATE DATABASE classicmodels_backup;
53, > CREATE DATABASE classicmodels_backup;
54, > CREATE DATABASE classicmodels_backup;
62, ____.Đặc quyền cấp bảng áp dụng cho các bảng và chế độ xem cơ sở. Chúng không áp dụng cho các bảng được tạo bằng
> CREATE DATABASE classicmodels_backup;
38, ngay cả khi tên bảng khớp. Để biết thông tin về các đặc quyền bảng +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
67, xem Phần & NBSP; 13.1.20.2, Tạo câu lệnh bảng tạm thời.MYSQL lưu trữ các đặc quyền bảng trong bảng hệ thống
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
68.Đặc quyền cột
Đặc quyền cột áp dụng cho các cột đơn trong một bảng đã cho. Mỗi đặc quyền được cấp ở cấp cột phải được theo sau bởi các cột hoặc cột, được đặt trong ngoặc đơn.
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
1Các giá trị
> CREATE DATABASE classicmodels_backup;
24 cho phép cho một cột (nghĩa là khi bạn sử dụng mệnh đề +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
70) là > CREATE DATABASE classicmodels_backup;
54, > CREATE DATABASE classicmodels_backup;
62, > CREATE DATABASE classicmodels_backup;
58 và > SHOW TABLES FROM classicmodels_backup;
9.
MySQL lưu trữ các đặc quyền cột trong bảng hệ thống
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
75.Được lưu trữ đặc quyền thường xuyên
Các đặc quyền
> CREATE DATABASE classicmodels_backup;
32, > CREATE DATABASE classicmodels_backup;
35, > CREATE DATABASE classicmodels_backup;
50 và > SHOW TABLES FROM classicmodels_backup;
8 áp dụng cho các thói quen được lưu trữ (quy trình và chức năng). Chúng có thể được cấp ở cấp độ toàn cầu và cơ sở dữ liệu. Ngoại trừ > CREATE DATABASE classicmodels_backup;
35, các đặc quyền này có thể được cấp ở cấp độ thường quy cho các thói quen riêng lẻ.+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
2Các giá trị
> CREATE DATABASE classicmodels_backup;
24 cho phép ở cấp độ thường quy là +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
82, > CREATE DATABASE classicmodels_backup;
50 và > SHOW TABLES FROM classicmodels_backup;
8. > CREATE DATABASE classicmodels_backup;
35 không phải là một đặc quyền cấp thông thường vì bạn phải có đặc quyền ở cấp độ toàn cầu hoặc cơ sở dữ liệu để tạo ra một thói quen ngay từ đầu.MySQL lưu trữ các đặc quyền cấp thường xuyên trong bảng hệ thống
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
86.Đặc quyền người dùng proxy
Đặc quyền
> CREATE DATABASE classicmodels_backup;
29 cho phép một người dùng trở thành proxy cho người khác. Người dùng proxy mạo danh hoặc lấy danh tính của người dùng proxied; Đó là, nó giả định các đặc quyền của người dùng ủy quyền.+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
3Khi
> CREATE DATABASE classicmodels_backup;
29 được cấp, nó phải là đặc quyền duy nhất được đặt tên trong tuyên bố >mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
7 và tùy chọn +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
90 được phép duy nhất là +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
91.Proxy yêu cầu người dùng proxy xác thực thông qua một plugin trả về tên của người dùng proxied cho máy chủ khi người dùng proxy kết nối và người dùng proxy có đặc quyền
> CREATE DATABASE classicmodels_backup;
29 cho người dùng ủy quyền. Để biết chi tiết và ví dụ, xem Phần & NBSP; 6.2.19, Người dùng Proxy Proxy.MySQL lưu trữ các đặc quyền proxy trong bảng hệ thống
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
93.Cấp vai trò
>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
7 Cú pháp không có mệnh đề > SHOW TABLES FROM classicmodels_backup;
3 cấp vai trò thay vì các đặc quyền riêng lẻ. Một vai trò là một tập hợp các đặc quyền được đặt tên; Xem Phần & NBSP; 6.2.10, Sử dụng Vai trò. Ví dụ:+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
4Mỗi vai trò được cấp phải tồn tại, cũng như mỗi tài khoản người dùng hoặc vai trò được cấp. Kể từ MySQL 8.0.16, vai trò không thể được cấp cho người dùng ẩn danh.
Cấp một vai trò không tự động khiến vai trò hoạt động. Để biết thông tin về kích hoạt vai trò và bất hoạt, xem vai trò kích hoạt.
Những đặc quyền này được yêu cầu để cấp vai trò:
Nếu bạn có đặc quyền
96 (hoặc đặc quyền+----------------------+ | Database | +----------------------+ | classicmodels | | classicmodels_backup | | information_schema | | mysql | | performance_schema | | sys | +----------------------+ 6 rows in set (0.00 sec)
4 không dùng nữa), bạn có thể cấp hoặc thu hồi bất kỳ vai trò nào cho người dùng hoặc vai trò.+--------------------------------+ | Tables_in_classicmodels_backup | +--------------------------------+ | customers | | employees | | offices | | orderdetails | | orders | | payments | | productlines | | products | +--------------------------------+ 8 rows in set (0.01 sec)
Nếu bạn được cấp vai trò với tuyên bố
7 bao gồm mệnh đề>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
99, bạn sẽ có thể cấp vai trò đó cho người dùng hoặc vai trò khác hoặc thu hồi nó từ những người dùng hoặc vai trò khác, miễn là vai trò này sau đó cấp hoặc thu hồi nó. Điều này bao gồm khả năng sử dụng+----------------------+ | Database | +----------------------+ | classicmodels | | classicmodels_backup | | information_schema | | mysql | | performance_schema | | sys | +----------------------+ 6 rows in set (0.00 sec)
99.+----------------------+ | Database | +----------------------+ | classicmodels | | classicmodels_backup | | information_schema | | mysql | | performance_schema | | sys | +----------------------+ 6 rows in set (0.00 sec)
Để cấp một vai trò có đặc quyền
01, bạn phải có đặc quyền>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
01.>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
Có thể tạo các tài liệu tham khảo tròn với
>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
7. Ví dụ:+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
5Tài liệu tham khảo tài trợ thông tư được cho phép nhưng không thêm đặc quyền hoặc vai trò mới vào người được cấp vì người dùng hoặc vai trò đã có các đặc quyền và vai trò của nó.
Điều khoản >mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
9 và các hạn chế đặc quyền
>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
Kể từ MySQL 8.0.16,
>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
7 có điều khoản AS > CREATE DATABASE classicmodels_backup;
07 [với vai trò] chỉ định thông tin bổ sung về bối cảnh đặc quyền để sử dụng để thực thi câu lệnh. Cú pháp này có thể nhìn thấy ở cấp độ SQL, mặc dù mục đích chính của nó là cho phép sao chép thống nhất trên tất cả các nút của các hạn chế đặc quyền của nhà tài trợ được áp đặt bởi các thu hồi một phần, bằng cách khiến các hạn chế đó xuất hiện trong nhật ký nhị phân. Để biết thông tin về các cuộc thu hồi một phần, xem Phần & NBSP; 6.2.12, Hạn chế đặc quyền của Hồi giáo bằng cách sử dụng một phần Revokes.AS > CREATE DATABASE classicmodels_backup;
07 [WITH ROLE]
clause that specifies additional information about the privilege context to use for statement execution. This syntax is visible at the SQL level, although its primary purpose is to enable uniform replication across all nodes of grantor privilege restrictions imposed by partial revokes, by causing those restrictions to appear in the binary log. For information about partial revokes, see Section 6.2.12, “Privilege Restriction Using
Partial Revokes”. Khi mệnh đề AS ____107 được chỉ định, việc thực thi câu lệnh sẽ tính đến mọi hạn chế đặc quyền liên quan đến người dùng được đặt tên, bao gồm tất cả các vai trò được chỉ định bởi
>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql
Enter password: **********
08, nếu có. Kết quả là các đặc quyền thực sự được cấp bởi tuyên bố có thể được giảm so với các đặc quyền được chỉ định.AS > CREATE DATABASE classicmodels_backup;
07
clause is specified, statement execution takes into account any privilege restrictions associated with the named user, including all roles specified by >mysqldump -u root -p classicmodels > d:\db\classicmodels.sql
Enter password: **********
08, if present. The result is that the privileges actually granted by the statement may be reduced relative to those specified. Những điều kiện này áp dụng cho mệnh đề AS
> CREATE DATABASE classicmodels_backup;
07:AS
> CREATE DATABASE classicmodels_backup;
07
clause:
9 chỉ có hiệu ứng khi>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
07 có tên có các hạn chế đặc quyền (ngụ ý rằng biến hệ thống> CREATE DATABASE classicmodels_backup;
01 được bật).> CREATE DATABASE classicmodels_backup;
Nếu
08 được đưa ra, tất cả các vai trò có tên phải được cấp cho>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
07 có tên.> CREATE DATABASE classicmodels_backup;
07 được đặt tên phải là tài khoản MySQL được chỉ định là '________ 81'@'________ 82',> CREATE DATABASE classicmodels_backup;
18 hoặc>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
19. Người dùng hiện tại có thể được đặt tên cùng với>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
20 cho trường hợp người dùng thực thi muốn>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
7 thực thi với một tập hợp các vai trò được áp dụng có thể khác với vai trò hoạt động trong phiên hiện tại.>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
'
,
1'@'CREATE DATABASE `classicmodels`. USE `classicmodels`;
2'CREATE DATABASE `classicmodels`. USE `classicmodels`;
18, or>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
19. The current user may be named together with>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
20 for the case that the executing user wants>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
7 to execute with a set of roles applied that may differ from the roles active within the current session.>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
-
9 không thể được sử dụng để có được các đặc quyền không bị sở hữu bởi người dùng thực thi câu lệnh>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
7. Người dùng thực thi phải có ít nhất các đặc quyền được cấp, nhưng mệnh đề>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
9 chỉ có thể hạn chế các đặc quyền được cấp, không leo thang chúng.>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
Đối với các đặc quyền được cấp,
9 không thể chỉ định kết hợp người dùng/vai trò có nhiều đặc quyền hơn (ít hạn chế hơn) so với người dùng thực thi câu lệnh>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
7. Sự kết hợp người dùng/vai trò>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
9 được phép có nhiều đặc quyền hơn người dùng thực thi, nhưng chỉ khi câu lệnh không cấp các đặc quyền bổ sung đó.>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
9 chỉ được hỗ trợ để cấp các đặc quyền toàn cầu (>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
21).+----------------------+ | Database | +----------------------+ | classicmodels | | classicmodels_backup | | information_schema | | mysql | | performance_schema | | sys | +----------------------+ 6 rows in set (0.00 sec)
9 không được hỗ trợ cho các khoản tài trợ>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
29.> CREATE DATABASE classicmodels_backup;
Ví dụ sau đây minh họa hiệu ứng của mệnh đề
>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
9. Tạo người dùng >mysqldump -u root -p classicmodels > d:\db\classicmodels.sql
Enter password: **********
33 có một số đặc quyền toàn cầu, cũng như các hạn chế đối với các đặc quyền đó:+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
6Đồng thời tạo vai trò
>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql
Enter password: **********
34 nâng một số hạn chế đặc quyền và cấp vai trò cho >mysqldump -u root -p classicmodels > d:\db\classicmodels.sql
Enter password: **********
33:+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
7Bây giờ, sử dụng một tài khoản không có hạn chế đặc quyền của riêng mình, cấp cho nhiều người dùng cùng một bộ đặc quyền toàn cầu, nhưng mỗi người có các hạn chế khác nhau được áp đặt bởi mệnh đề
>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
9 và kiểm tra các đặc quyền nào được cấp.Tuyên bố
7 ở đây không có mệnh đề>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
9, vì vậy các đặc quyền được cấp chính xác là những đặc quyền được chỉ định:>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
8+----------------------+ | Database | +----------------------+ | classicmodels | | classicmodels_backup | | information_schema | | mysql | | performance_schema | | sys | +----------------------+ 6 rows in set (0.00 sec)
Tuyên bố
7 ở đây có mệnh đề>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
9, do đó, các đặc quyền được cấp là những đặc quyền được chỉ định nhưng với các hạn chế từ>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
33 được áp dụng:>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
9+----------------------+ | Database | +----------------------+ | classicmodels | | classicmodels_backup | | information_schema | | mysql | | performance_schema | | sys | +----------------------+ 6 rows in set (0.00 sec)
Như đã đề cập trước đây, mệnh đề
9 chỉ có thể thêm các hạn chế đặc quyền; Nó không thể leo thang đặc quyền. Do đó, mặc dù>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
33 có đặc quyền>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
45, nhưng không được bao gồm trong các đặc quyền được cấp vì tuyên bố không chỉ định cấp> CREATE DATABASE classicmodels_backup;
45.> CREATE DATABASE classicmodels_backup;
Điều khoản
9 cho tuyên bố>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
7 ở đây làm cho vai trò>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
34 hoạt động cho>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
33. Vai trò đó nâng một số hạn chế đối với>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
33. Do đó, các đặc quyền được cấp có một số hạn chế, nhưng không nhiều như đối với tuyên bố>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
7 trước đó:>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
0>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
Nếu câu lệnh
>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
7 bao gồm mệnh đề AS > CREATE DATABASE classicmodels_backup;
07, các hạn chế đặc quyền đối với người dùng thực thi câu lệnh sẽ bị bỏ qua (thay vì áp dụng vì chúng sẽ không có điều khoản >mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
9).AS > CREATE DATABASE classicmodels_backup;
07
clause, privilege restrictions on the user who executes the statement are ignored (rather than applied as they would be in the absence of an >mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
9 clause). Các đặc điểm tài khoản khác
Điều khoản
+----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
90 tùy chọn được sử dụng để cho phép người dùng cấp đặc quyền cho người dùng khác. Điều khoản +----------------------+
| Database |
+----------------------+
| classicmodels |
| classicmodels_backup |
| information_schema |
| mysql |
| performance_schema |
| sys |
+----------------------+
6 rows in set (0.00 sec)
91 cung cấp cho người dùng khả năng cung cấp cho người dùng khác bất kỳ đặc quyền nào mà người dùng có ở cấp đặc quyền được chỉ định.Để cấp đặc quyền
> SHOW TABLES FROM classicmodels_backup;
8 cho một tài khoản mà không thay đổi đặc quyền của mình, hãy làm điều này:>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql
Enter password: **********
1Hãy cẩn thận với người mà bạn cho đặc quyền
>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql
Enter password: **********
58 vì hai người dùng có đặc quyền khác nhau có thể kết hợp các đặc quyền!
Bạn không thể cấp cho người dùng khác một đặc quyền mà chính bạn không có; Đặc quyền
> SHOW TABLES FROM classicmodels_backup;
8 cho phép bạn chỉ gán những đặc quyền mà chính bạn sở hữu.Xin lưu ý rằng khi bạn cấp cho người dùng, đặc quyền
> SHOW TABLES FROM classicmodels_backup;
8 ở cấp đặc quyền cụ thể, bất kỳ đặc quyền nào mà người dùng sở hữu (hoặc có thể được đưa ra trong tương lai) ở cấp độ đó cũng có thể được người dùng cấp cho người dùng khác. Giả sử bạn cấp cho người dùng đặc quyền > CREATE DATABASE classicmodels_backup;
54 trên cơ sở dữ liệu. Nếu sau đó bạn cấp đặc quyền > CREATE DATABASE classicmodels_backup;
58 trên cơ sở dữ liệu và chỉ định >mysqldump -u root -p classicmodels > d:\db\classicmodels.sql
Enter password: **********
63, người dùng đó có thể cung cấp cho người dùng khác không chỉ đặc quyền > CREATE DATABASE classicmodels_backup;
58 mà còn > CREATE DATABASE classicmodels_backup;
54. Nếu bạn cấp đặc quyền > SHOW TABLES FROM classicmodels_backup;
9 cho người dùng trên cơ sở dữ liệu, người dùng có thể cấp > CREATE DATABASE classicmodels_backup;
54, > CREATE DATABASE classicmodels_backup;
58 và > SHOW TABLES FROM classicmodels_backup;
9.Đối với người dùng không quản lý, bạn không nên cấp đặc quyền
> CREATE DATABASE classicmodels_backup;
30 trên toàn cầu hoặc cho lược đồ hệ thống +--------------------------------+
| Tables_in_classicmodels_backup |
+--------------------------------+
| customers |
| employees |
| offices |
| orderdetails |
| orders |
| payments |
| productlines |
| products |
+--------------------------------+
8 rows in set (0.01 sec)
0. Nếu bạn làm điều đó, người dùng có thể cố gắng lật đổ hệ thống đặc quyền bằng cách đổi tên các bảng!Để biết thêm thông tin về các rủi ro bảo mật liên quan đến các đặc quyền cụ thể, hãy xem Phần & NBSP; 6.2.2, các đặc quyền được cung cấp bởi MySQL.
MySQL và các phiên bản SQL tiêu chuẩn của Grant
Sự khác biệt lớn nhất giữa các phiên bản MYSQL và SQL tiêu chuẩn của
>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql
Enter password: **********
7 là:MySQL liên kết các đặc quyền với sự kết hợp của tên máy chủ và tên người dùng chứ không chỉ bằng tên người dùng.
SQL tiêu chuẩn không có các đặc quyền cấp cơ sở dữ liệu hoặc toàn cầu, cũng không hỗ trợ tất cả các loại đặc quyền mà MySQL hỗ trợ.
MySQL không hỗ trợ đặc quyền SQL
73 tiêu chuẩn.>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
Các đặc quyền SQL tiêu chuẩn được cấu trúc theo cách phân cấp. Nếu bạn xóa người dùng, tất cả các đặc quyền mà người dùng đã bị hủy bỏ. Điều này cũng đúng trong MySQL nếu bạn sử dụng
41. Xem Phần & NBSP; 13.7.1.5, Tuyên bố người dùng thả.> CREATE DATABASE classicmodels_backup;
Trong SQL tiêu chuẩn, khi bạn thả một bảng, tất cả các đặc quyền cho bảng đều bị thu hồi. Trong SQL tiêu chuẩn, khi bạn thu hồi một đặc quyền, tất cả các đặc quyền được cấp dựa trên đặc quyền đó cũng bị thu hồi. Trong MySQL, các đặc quyền có thể được loại bỏ với các câu lệnh
41 hoặc> CREATE DATABASE classicmodels_backup;
6.+--------------------------------+ | Tables_in_classicmodels_backup | +--------------------------------+ | customers | | employees | | offices | | orderdetails | | orders | | payments | | productlines | | products | +--------------------------------+ 8 rows in set (0.01 sec)
Trong MySQL, có thể có đặc quyền
54 chỉ cho một số cột trong bảng. Trong trường hợp này, bạn vẫn có thể thực thi các câu lệnh> CREATE DATABASE classicmodels_backup;
54 trên bảng, miễn là bạn chỉ chèn các giá trị cho các cột mà bạn có đặc quyền> CREATE DATABASE classicmodels_backup;
54. Các cột bị bỏ qua được đặt thành các giá trị mặc định ngầm của chúng nếu chế độ SQL nghiêm ngặt không được bật. Trong chế độ nghiêm ngặt, câu lệnh bị từ chối nếu bất kỳ cột bị bỏ qua nào không có giá trị mặc định. . .> CREATE DATABASE classicmodels_backup;