Mẹo. Đảm bảo bạn có quyền quản trị viên trước khi tạo bất kỳ cơ sở dữ liệu nào. Sau khi cơ sở dữ liệu được tạo, bạn có thể kiểm tra nó trong danh sách cơ sở dữ liệu bằng lệnh SQL sau.
$ mysql> CREATE DATABASE matomo_db_name_here;
2; Phản hồi đã được gửi thành công Cảm ơn bạn đã phản hồi có giá trị. Chúng tôi sẽ sử dụng nó để tạo matomo. tổ chức thậm chí còn tốt hơn
- Nhà
- Cứu giúp
- Cài đặt & Bảo trì
- Matomo tại chỗ [tự lưu trữ]
- Cài đặt Matomo
Làm cách nào để tạo cơ sở dữ liệu mới và người dùng cơ sở dữ liệu trong MySQL?
Khi cài đặt Matomo, bạn cần chỉ định tên máy chủ, người dùng và mật khẩu cơ sở dữ liệu MySQL [hoặc MariaDB]
Để tạo cơ sở dữ liệu và người dùng cơ sở dữ liệu, thông thường bạn sẽ sử dụng giao diện nhà cung cấp dịch vụ lưu trữ web cho phép bạn thêm cơ sở dữ liệu MySQL mới và tạo người dùng mới có quyền truy cập cơ sở dữ liệu này, chỉ bằng vài cú nhấp chuột
Nếu bạn đang cài đặt Matomo [Piwik] trên máy chủ của riêng mình và/hoặc không có sẵn công cụ để quản lý cơ sở dữ liệu, bạn có thể tạo người dùng cơ sở dữ liệu MySQL theo cách thủ công bằng cách thực hiện theo các bước sau
Kết nối với cơ sở dữ liệu MySQL của bạn
$ mysql
Tạo cơ sở dữ liệu cho Matomo
$ mysql> CREATE DATABASE matomo_db_name_here;
Tạo người dùng có tên là
3, nếu bạn đang sử dụng MySQL 5. 7 hoặc MySQL 8 trở lên$ mysql> CREATE DATABASE matomo_db_name_here;
$ mysql> CREATE USER 'matomo'@'localhost' IDENTIFIED WITH mysql_native_password BY 'my-strong-password-here';
Hoặc nếu bạn đang sử dụng phiên bản cũ hơn như MySQL 5. 1, MySQL5. 5, MySQL5. 6
$ mysql> CREATE USER 'matomo'@'localhost' IDENTIFIED BY 'my-strong-password-here';
Cấp cho người dùng này
3 quyền truy cập cơ sở dữ liệu$ mysql> CREATE DATABASE matomo_db_name_here;
5 của bạn$ mysql> CREATE DATABASE matomo_db_name_here;
$ mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, INDEX, DROP, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON matomo_db_name_here.* TO 'matomo'@'localhost';
Điều quan trọng là cấp cho người dùng các đặc quyền sau.
6$ mysql> CREATE DATABASE matomo_db_name_here;
[TÙY CHỌN] Cấp cho người dùng này
3 đặc quyền toàn cầu FILE. [nếu được bật, các báo cáo sẽ được lưu trữ nhanh hơn nhờ tính năng LOAD DATA INFILE]$ mysql> CREATE DATABASE matomo_db_name_here;
Hãy tưởng tượng bạn cần tạo một cơ sở dữ liệu với tên “phim”. Bạn có thể tạo cơ sở dữ liệu trong MySQL bằng cách thực hiện lệnh SQL sau
CREATE DATABASE movies;
Ghi chú. bạn cũng có thể sử dụng lệnh CREATE SCHEMA thay vì CREATE DATABASE
Bây giờ, hãy cải thiện truy vấn SQL của chúng tôi bằng cách thêm nhiều tham số và thông số kỹ thuật hơn
NẾU KHÔNG TỒN TẠI
Một máy chủ MySQL có thể có nhiều cơ sở dữ liệu. Nếu bạn không phải là người duy nhất truy cập cùng một máy chủ MySQL hoặc nếu bạn phải xử lý nhiều cơ sở dữ liệu thì có khả năng bạn sẽ cố gắng tạo một cơ sở dữ liệu mới với tên của cơ sở dữ liệu hiện có. IF NOT EXISTS cho phép bạn hướng dẫn máy chủ MySQL kiểm tra sự tồn tại của cơ sở dữ liệu có tên tương tự trước khi tạo cơ sở dữ liệu
Khi IF NOT EXISTS được sử dụng, cơ sở dữ liệu chỉ được tạo nếu tên đã cho không xung đột với tên của cơ sở dữ liệu hiện có. Nếu không sử dụng IF NOT EXISTS thì MySQL sẽ báo lỗi
CREATE DATABASE IF NOT EXISTS movies;
Đối chiếu và bộ ký tự
Đối chiếu là tập hợp các quy tắc được sử dụng để so sánh. Nhiều người sử dụng MySQL để lưu trữ dữ liệu không phải tiếng Anh. Dữ liệu được lưu trữ trong MySQL bằng một bộ ký tự cụ thể. Bộ ký tự có thể được xác định ở các cấp độ khác nhau viz, máy chủ, cơ sở dữ liệu, bảng và cột
Bạn cần chọn các quy tắc đối chiếu, lần lượt phụ thuộc vào bộ ký tự đã chọn
Chẳng hạn, bộ ký tự Latin1 sử dụng đối chiếu
$ mysql> CREATE DATABASE matomo_db_name_here;
8 là thứ tự phân biệt chữ hoa chữ thường của Thụy ĐiểnCREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci
Cách tốt nhất khi sử dụng các ngôn ngữ địa phương như tiếng Ả Rập, tiếng Trung, v.v. là chọn bộ ký tự Unicode [utf-8] có một số đối chiếu hoặc chỉ sử dụng đối chiếu mặc định utf8-General-ci
Bạn có thể tìm thấy danh sách tất cả các đối chiếu và bộ ký tự tại đây
Bạn có thể xem danh sách các cơ sở dữ liệu hiện có bằng cách chạy lệnh SQL sau
________số 8Cách tạo bảng trong MySQL
Lệnh CREATE TABLE dùng để tạo bảng trong cơ sở dữ liệu
Các bảng có thể được tạo bằng cách sử dụng câu lệnh CREATE TABLE và nó thực sự có cú pháp sau
CREATE TABLE [IF NOT EXISTS] `TableName` [`fieldname` dataType [optional parameters]] ENGINE = storage Engine;
NƠI ĐÂY
- “CREATE TABLE” là phần chịu trách nhiệm tạo bảng trong cơ sở dữ liệu
- “[IF NOT EXISTS]” là tùy chọn và chỉ tạo bảng nếu không tìm thấy tên bảng phù hợp
- “`fieldName`” là tên của trường và “data Type” xác định bản chất của dữ liệu sẽ được lưu trữ trong trường
- “[tham số tùy chọn]” thông tin bổ sung về một trường chẳng hạn như ” AUTO_INCREMENT”, NOT NULL, v.v.
Ví dụ về bảng tạo MySQL
Dưới đây là một ví dụ MySQL để tạo một bảng trong cơ sở dữ liệu
$ mysql> CREATE DATABASE matomo_db_name_here;
0Bây giờ hãy xem các kiểu dữ liệu của MySQL là gì. Bạn có thể sử dụng bất kỳ trong số chúng tùy thuộc vào nhu cầu của bạn. Bạn phải luôn cố gắng không đánh giá thấp hoặc đánh giá quá cao phạm vi dữ liệu tiềm năng khi tạo cơ sở dữ liệu
LOẠI DỮ LIỆU
Các kiểu dữ liệu xác định bản chất của dữ liệu có thể được lưu trữ trong một cột cụ thể của bảng
MySQL có 3 loại chính của các loại dữ liệu cụ thể là
- số,
- Chữ
- Ngày giờ
Kiểu dữ liệu số
Các kiểu dữ liệu số được sử dụng để lưu trữ các giá trị số. Điều rất quan trọng là đảm bảo phạm vi dữ liệu của bạn nằm giữa ranh giới dưới và trên của các loại dữ liệu số
TINYINT[ ]-128 tới 127 bình thường0 tới 255 KHÔNG KÝ. SMALLINT[ ]-32768 tới 32767 bình thường
0 tới 65535 CHƯA KÝ. MEDIUMINT[ ]-8388608 tới 8388607 bình thường
0 tới 16777215 CHƯA KÝ. INT[ ]-2147483648 tới 2147483647 bình thường
0 tới 4294967295 KHÔNG KÝ. BIGINT[ ]-9223372036854775808 tới 9223372036854775807 bình thường
0 tới 18446744073709551615 CHƯA KÝ. FLOATA số gần đúng nhỏ với dấu thập phân động. NHÂN ĐÔI[ , ]Một số lớn có dấu thập phân động. DECIMAL[ , ]A DOUBLE được lưu dưới dạng chuỗi , cho phép dấu thập phân cố định. Lựa chọn lưu trữ giá trị tiền tệ.
Kiểu dữ liệu văn bản
Vì tên danh mục loại dữ liệu ngụ ý, chúng được sử dụng để lưu trữ các giá trị văn bản. Luôn đảm bảo độ dài của dữ liệu văn bản không vượt quá độ dài tối đa
Ngày giờ
DATEYYYY-MM-DDDATETIMEYYYY-MM-DD HH. MM. SSTIMESTAMPYYYYMMDDDHHMMSSTIMEHH. MM. SSNgoài trên còn một số kiểu dữ liệu khác trong MySQL
ENUMĐể lưu trữ giá trị văn bản được chọn từ danh sách các giá trị văn bản được xác định trướcSETĐiều này cũng được sử dụng để lưu trữ các giá trị văn bản được chọn từ danh sách các giá trị văn bản được xác định trước. Nó có thể có nhiều giá trị. BOOLSynonym của TINYINT[1], được sử dụng để lưu trữ các giá trị BooleanBINARYTương tự như CHAR, sự khác biệt là các văn bản được lưu trữ ở định dạng nhị phân. VARBINARY Tương tự như VARCHAR, sự khác biệt là văn bản được lưu trữ ở định dạng nhị phânBây giờ hãy xem một truy vấn để tạo một bảng có dữ liệu của tất cả các loại dữ liệu. Nghiên cứu nó và xác định cách xác định từng loại dữ liệu trong ví dụ tạo bảng MySQL bên dưới
$ mysql> CREATE DATABASE matomo_db_name_here;
1Thực hành tốt nhất
- Sử dụng chữ in hoa cho từ khóa SQL i. e. “THẢ LƯỢC ĐỒ NẾU TỒN TẠI `MyFlixDB`;”
- Kết thúc tất cả các lệnh SQL của bạn bằng dấu chấm phẩy
- Tránh sử dụng khoảng trắng trong tên lược đồ, bảng và trường. Thay vào đó, hãy sử dụng dấu gạch dưới để phân tách tên lược đồ, bảng hoặc trường
Cách tạo sơ đồ ER của bàn làm việc MySQL về kỹ thuật chuyển tiếp
Bàn làm việc của MySQL có các tiện ích hỗ trợ kỹ thuật chuyển tiếp. Kỹ thuật chuyển tiếp là một thuật ngữ kỹ thuật dùng để mô tả quá trình chuyển đổi một mô hình logic thành một triển khai vật lý một cách tự động
Chúng tôi đã tạo sơ đồ ER trên hướng dẫn lập mô hình ER của chúng tôi. Bây giờ chúng tôi sẽ sử dụng mô hình ER đó để tạo các tập lệnh SQL sẽ tạo cơ sở dữ liệu của chúng tôi
Tạo cơ sở dữ liệu MyFlix từ mô hình MyFlix ER
Bước 1] Mở mô hình ER của cơ sở dữ liệu MyFlix
Mở mô hình ER của cơ sở dữ liệu MyFlix mà bạn đã tạo trong hướng dẫn trước đó
Bước 2] Chọn kỹ sư chuyển tiếp
Nhấp vào menu cơ sở dữ liệu. Chọn kỹ sư chuyển tiếp
Bước 3] Tùy chọn kết nối
Cửa sổ tiếp theo, cho phép bạn kết nối với một phiên bản của máy chủ MySQL. Nhấp vào danh sách thả xuống kết nối được lưu trữ và chọn máy chủ lưu trữ cục bộ. Nhấp vào Thực hiện
Bước 4] Chọn các tùy chọn hiển thị bên dưới
Chọn các tùy chọn hiển thị bên dưới trong trình hướng dẫn xuất hiện. Nhấn tiếp
Bước 5] Giữ các lựa chọn mặc định và nhấp vào Tiếp theo
Màn hình tiếp theo hiển thị tóm tắt các đối tượng trong sơ đồ EER của chúng tôi. MyFlix DB của chúng tôi có 5 bảng. Giữ các lựa chọn mặc định và nhấp vào Tiếp theo
Bước 6] Xem lại tập lệnh SQL
Xuất hiện cửa sổ như bên dưới. Cửa sổ này cho phép bạn xem trước tập lệnh SQL để tạo cơ sở dữ liệu của chúng tôi. Chúng tôi có thể lưu các tập lệnh vào *. sql” hoặc sao chép tập lệnh vào khay nhớ tạm. Bấm vào nút tiếp theo
Bước 7] Cam kết tiến độ
Cửa sổ hiển thị bên dưới xuất hiện sau khi tạo thành công cơ sở dữ liệu trên phiên bản máy chủ MySQL đã chọn
Bản tóm tắt
- Tạo cơ sở dữ liệu liên quan đến việc dịch mô hình thiết kế cơ sở dữ liệu logic sang cơ sở dữ liệu vật lý
- MySQL hỗ trợ một số kiểu dữ liệu cho các giá trị số, ngày và chuỗi
- Lệnh CREATE DATABASE dùng để tạo cơ sở dữ liệu
- Lệnh CREATE TABLE dùng để tạo bảng trong cơ sở dữ liệu
- Bàn làm việc của MySQL hỗ trợ kỹ thuật chuyển tiếp liên quan đến việc tự động tạo các tập lệnh SQL từ mô hình cơ sở dữ liệu logic có thể được thực thi để tạo cơ sở dữ liệu vật lý
Cơ sở dữ liệu cùng với Dữ liệu giả được đính kèm. Chúng tôi sẽ sử dụng DB này cho tất cả các hướng dẫn tiếp theo của chúng tôi. Nhập DB đơn giản vào MySQL Workbench để bắt đầu