0
Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.
Tôi đang làm việc trên cơ sở dữ liệu MySQL lần đầu tiên. Tôi đã cố gắng tạo một cơ sở dữ liệu lược đồ.
Đây là những gì tôi đã nhập:
CREATE SCHEMA 'Database' ;
Và tôi đang nhận được cái này
Lỗi: "16:28:00 Tạo lược đồ 'Database123' Mã lỗi: 1064. Bạn có lỗi trong cú pháp SQL của mình; kiểm tra hướng dẫn tương ứng với phiên bản máy chủ MySQL của bạn cho cú pháp phù hợp để sử dụng gần '' Database123 '' Dòng 1 0,000 giây "....
Riggsfolly
91.3k20 Huy hiệu vàng101 Huy hiệu bạc145 Huy hiệu đồng20 gold badges101 silver badges145 bronze badges
Khi được hỏi ngày 2 tháng 5 năm 2018 lúc 16:53May 2, 2018 at 16:53
1
Hãy thử nó mà không cần trích dẫn. Nếu bạn vẫn đang gặp lỗi, đó có thể là cơ sở dữ liệu là từ khóa dành riêng.
Mrleeh
5,0054 Huy hiệu vàng30 Huy hiệu bạc47 Huy hiệu đồng4 gold badges30 silver badges47 bronze badges
Đã trả lời ngày 2 tháng 5 năm 2018 lúc 17:06May 2, 2018 at 17:06
Nếu bạn sử dụng bảng điều khiển MySQL:
mysql -u USERNAME -p;
[Nhập mật khẩu cho người dùng MySQL].
CREATE SCHEMA `databaseName` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
SHOW DATABASES;
Danh sách sẽ hiển thị cơ sở dữ liệu được tạo
Đã trả lời ngày 2 tháng 5 năm 2018 lúc 17:02May 2, 2018 at 17:02
Lần tới khi bạn đăng nhập vào MySQL, hãy chạy truy vấn này:
SELECT USER[],CURRENT_USER[];
Điều này cung cấp cho bạn những gì?
USER[]
Báo cáo cách bạn đã cố gắng xác thực trong MySQLCURRENT_USER[]
Báo cáo về cách bạn được phép xác thực trong MySQL
Những gì trở lại cho CURRENT_USER[]
chứa tất cả các quyền mà bạn đã có những người mẹ bạn đã đăng nhập. Rất có thể, bạn không có những đặc quyền cần thiết.
Vui lòng xem qua các khoản tài trợ bạn có và sửa chúng hoặc kết nối với người dùng có các đặc quyền cần thiết.
Để xem các đặc quyền được chỉ định, vui lòng chạy
SHOW GRANTS FOR CURRENT_USER[];
Trong nhận xét của bạn, bạn đã nói rằng bạn có các quyền sau khi đăng nhập [từ đầu ra của hàm CURRENT_USER[]
]:
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER,
CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW,
CREATE ROUTINE, ALTER ROUTINE ON waitronmain`.* TO ''waitronmain''@''%'';
Đây là tất cả các quyền bạn có. Vì bạn đang ở trong cài đặt DB được quản lý, bạn không thể cấp quyền để tạo cơ sở dữ liệu. Hơn thế nữa, họ sẽ không giúp bạn dễ dàng làm như vậy .. Mặc dù bạn có đặc quyền
mysql -u USERNAME -p;
2 trong danh sách, nhưng nó không áp dụng cho cấp cơ sở dữ liệu, chỉ có cấp độ bảng.Đây là bằng chứng: Tôi có một cơ sở dữ liệu gọi là
mysql -u USERNAME -p;
3. Tôi sẽ tạo một người dùng có tên mysql -u USERNAME -p;
4mysql> grant all on zipcodes.* to rolando identified by 'blahblah';
Query OK, 0 rows affected [0.04 sec]
mysql> show grants for rolando;
+--------------------------------------------------------------------------------------------------------+
| Grants for rolando@% |
+--------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'rolando'@'%' IDENTIFIED BY PASSWORD '*446525BB82B5E22BD9E525261D37C494F623C52B' |
| GRANT ALL PRIVILEGES ON `zipcodes`.* TO 'rolando'@'%' |
+--------------------------------------------------------------------------------------------------------+
2 rows in set [0.00 sec]
Đây là những gì lược đồ
mysql -u USERNAME -p;
5 nói về đặc quyền mysql -u USERNAME -p;
2:mysql> select user,host,create_priv from mysql.user where user='rolando';
+---------+------+-------------+
| user | host | create_priv |
+---------+------+-------------+
| rolando | % | N |
+---------+------+-------------+
1 row in set [0.00 sec]
mysql> select user,host,create_priv from mysql.db where user='rolando';
+---------+------+-------------+
| user | host | create_priv |
+---------+------+-------------+
| rolando | % | Y |
+---------+------+-------------+
1 row in set [0.00 sec]
mysql>
Vì vậy, như tôi đã nói, người dùng không có đặc quyền toàn cầu. Người dùng có bảng
mysql -u USERNAME -p;
2 đặc quyền vì mysql -u USERNAME -p;
9 có y cho create_priv.