Cơ sở dữ liệu mã nguồn mở - MySQL
Nội dung trình bày
I. Làm quen với MySQL
I.1. MySQL là gì?
Slide 5
I.1. Cài đặt MySQL (trên Windows)
I.1.1. Yêu cầu tối thiểu
I.1.2. Cài đặt MySQL trên Windows
I.1.3. CSDL đầu tiên với MySQL
I.1.3.1. Connect & Disconnect server
I.1.3.2. Nhập Query trên console
I.1.3.2. Nhập Query trên Console (2)
I.1.3.2. Nhập Query trên Console (3)
I.1.3.2. Nhập query trên console (4)
I.1.3.2. Nhập Query trên Console (4)
Slide 16
I.1.3.3. Tạo và sử dụng cơ sở dữ liệu
I.1.3.4. Tạo bảng, import dữ liệu vào bảng
I.1.3.4. Tạo bảng, import dữ liệu vào bảng (2)
I.1.3.4. Tạo bảng, import dữ liệu vào bảng (3)
I.1.3.5. Xem thông tin từ bảng
I.1.3.5. Xem thông tin từ bảng (2)
II. MySQL căn bản
II.1. Cấu trúc ngôn ngữ
II.1.1. String & Số
II.1.1.1. String
II.1.1.1. String (2)
II.1.1.2. Số
II.1.1.3. Giá trị NULL
II.1.1.2. Tên CSDL, bảng, chỉ số, cột
II.1.3. Phân biệt chữ hoa, chữ thường
II.1.4. Biến
II.1.5. Biến hệ thống
II.1.6. Chú thích
II.2. Kiểu trường (cột)
II.2.1. Các kiểu số
II.2.2. Kiểu ngày tháng
II.2.3. Các kiểu chuỗi
II.2.3.1. Kiểu 'CHAR' và 'VARCHAR'
II.2.3.2. Kiểu 'BLOB' và 'TEXT'
II.2.3.3. Kiểu 'ENUM'
II.2.3.3. Kiểu 'ENUM' (2)
II.2.3.4. Kiểu 'SET'
II.2.3.4. Kiểu 'SET' (2)
II.2.3.4. Kiểu 'SET' (3)
II.2.4. Kích thước của các kiểu dữ liệu
II.2.4. Kích thước của các kiểu dữ liệu (2)
II.2.4. Kích thước của các kiểu dữ liệu (3)
II.3. Các hàm sử dụng với câu lệnh SELECT và mệnh đề WHERE
II.3.1. Các toán tử và hàm điều kiện
II.3.1.1. Các toán tử so sánh
II.3.1.1. Các toán tử so sánh (2)
II.3.1.1. Các toán tử so sánh (3)
II.3.1.1. Các toán tử so sánh (4)
II.3.1.1. Các toán tử so sánh (5)
II.3.1.1. Các toán tử so sánh (6)
II.3.1.1. Các toán tử so sánh (7)
II.3.1.2. Các toán tử logic
II.3.1.3. Các hàm điều kiện
II.3.1.3. Các hàm điều kiện (2)
II.3.2. Các hàm trên String
II.3.2. Các hàm trên String (2)
II.3.2. Các hàm trên String (3)
II.3.2. Các hàm trên String (4)
II.3.2. Các hàm trên String (5)
II.3.2. Các hàm trên String (6)
Slide 67
II.3.2.1. So sánh string
II.3.2.1. So sánh string (2)
II.3.2.2. Phân biệt chữ hoa, chữ thường
II.3.3. Các hàm trên kiểu số
II.3.3. Các hàm trên kiểu số (2)
II.3.3. Các hàm trên kiểu số (3)
II.3.3. Các hàm trên kiểu số (4)
II.3.4. Các hàm trên ngày tháng
II.3.4. Các hàm trên ngày tháng (2)
II.3.4. Các hàm trên ngày tháng (3)
II.3.4. Các hàm trên ngày tháng (4)
II.3.4. Các hàm trên ngày tháng (5)
II.3.5. Hàm đổi kiểu
II.3.7. Các hàm dùng với mệnh đề GROUP BY
II.3.7.1. Các hàm GROUP BY
Slide 83
II.3.7.1. Các hàm GROUP BY (2)
II.3.7.2. WITH ROLLUP
II.3.7.2. WITH ROLLUP (2)
II.3.7.3. GROUP BY với các trường không nằm trong mệnh đề GROUP
II.3.7.3. GROUP BY với các trường không nằm trong mệnh đề GROUP (2)
Slide 89
II.4. Các câu lệnh thao tác trên dữ liệu (SELECT, INSERT, UPDATE, DELETE)
II.4.1. Câu lệnh SELECT
II.4.1. Câu lệnh SELECT (2)
II.4.1.1. Cú pháp lệnh SELECT
II.4.1.1. Cú pháp lệnh SELECT (2)
II.4.1.1. Cú pháp lệnh SELECT (3)
II.4.1.2. Sử dụng SELECT với JOIN
II.4.1.2. Sử dụng SELECT với JOIN (2)
II.4.1.2. Sử dụng SELECT với JOIN (3)
Slide 99
II.4.1.3. Sử dụng SELECT với UNION
II.4.1.3. Sử dụng SELECT với UNION (2)
II.4.1.3. Sử dụng SELECT với UNION (3)
II.4.2. Sử dụng query lồng nhau (SUBQUERY)
II.4.2. Sử dụng query lồng nhau (SUBQUERY) (2)
II.4.2. Sử dụng query lồng nhau (SUBQUERY) (3)
II.4.2. Sử dụng query lồng nhau (SUBQUERY) (4)
II.4.2. Sử dụng query lồng nhau (subquery)
II.4.2.1. Subquery với ANY, IN, SOME, ALL
II.4.2.2. Truyền các tham số giữa các lớp query
II.4.2.2. Truyền các tham số giữa các lớp query (2)
II.4.2.3. Sử dụng EXISTS và NOT EXISTS
II.4.2.3. Sử dụng EXISTS và NOT EXISTS (2)
II.4.2.4. Row Subquery
II.4.2.4. Row Subquery (2)
II.4.2.4. Row Subquery (3)
II.4.2.5. Subquery trong mệnh đề FROM
II.4.2.5. Subquery trong mệnh đề FROM (2)
II.4.2.6. Tối ưu hóa Subquery
II.4.2.6. Tối ưu hóa Subquery (2)
II.4.2.6. Tối ưu hóa Subquery (3)
II.4.3. Câu lệnh INSERT
Slide 122
II.4.3. Câu lệnh INSERT (2)
II.4.3. Câu lệnh INSERT (3)
II.4.4. Câu lệnh UPDATE
II.4.4. Câu lệnh UPDATE (2)
II.4.4. Câu lệnh UPDATE (3)
II.4.5. Câu lệnh DELETE
II.4.5. Câu lệnh DELETE (2)
II.4.5. Câu lệnh DELETE (3)
II.4.5. Câu lệnh DELETE (4)
II.4.5. Câu lệnh DELETE (5)
II.4.6. Câu lệnh REPLACE
II.4.7. Câu lệnh LOAD DATA INFILE
II.5. Các câu lệnh thao tác trên bảng CREATE, DROP, ALTER
II.5.1. CREATE DATABASE
II.5.2. DROP DATABASE
II.5.3. CREATE TABLE
II.5.3. CREATE TABLE (2)
II.5.3. CREATE TABLE (3)
II.5.3. CREATE TABLE (4)
II.5.3.1. create_definition
II.5.3.1. create_definition (2)
II.5.3.1.1. type
II.5.3.1.2. reference_definition
II.5.3.2. table_option
II.5.4. ALTER TABLE
II.5.4. ALTER TABLE (2)
II.5.4. ALTER TABLE (3)
II.5.6. DROP TABLE
II.6. View
II.6. View (2)
II.6. View (3)
II.6. View (4)
II.6. View (5)
II.7. Store Procedure
II.7.1. Khai báo Store Procedure
Slide 158
II.7.1. Khai báo Function
II.7.2. Gọi hàm
II.7.3. Sử dụng biến
Slide 162
II.7.4. Cấu trúc điều kiển
II.7.4. Cấu trúc điều khiển (2)
II.7.4. Cấu trúc điều khiển (3)
II.7.4. Cấu trúc điều khiển (4)
II.8. Trigger
II.8.1. Tạo Trigger
II.8.2. Sử dụng Trigger
Slide 170
II.9. Các dạng bảng của MySQL
II.9. Các dạng bảng của MySQL (2)
II.9.1. Dạng MyISAM
II.9.1. Dạng MyISAM (2)
II.9.2. Dạng HEAP
II.9.3. Dạng InnoDB
II.10. Làm việc với transaction & Locking command
II.10.1. START TRANSACTION, COMMIT, ROLLBACK
II.10.2. SAVE POINT, ROLLBACK TO SAVEPOINT
II.10.3. LOCK TABLES & UNLOCK TABLES
II.10.3. LOCK TABLES & UNLOCK TABLES (2)
III.Tối ưu hóa MySQL
III.1. Những vấn đề chung
III.2. Tối ưu hóa câu lệnh SELECT
III.2. Tối ưu hóa câu lệnh SELECT (2)
III.2.1. Sử dụng EXPLAIN
III.2.1. Sử dụng EXPLAIN (2)
III.2.1. Sử dụng EXPLAIN (3)
III.2.1. Sử dụng EXPLAIN (4)
III.2.1. Sử dụng EXPLAIN (5)
III.2.1. Sử dụng EXPLAIN (6)
III.2.1. Sử dụng EXPLAIN (7)
III.2.2. Phương pháp tối ưu hóa mệnh đề WHERE của MySQL
III.2.2. Phương pháp tối ưu hóa mệnh đề WHERE của MySQL (2)
III.2.2. Phương pháp tối ưu hóa mệnh đề WHERE của MySQL (3)
III.2.3. Phương pháp tối ưu hóa LEFT JOIN
III.3. Tối ưu hóa cấu trúc CSDL
III.3.1. Một số lưu ý
III.3.2. MySQL sử dụng Index như thế nào?
III.3.2. MySQL sử dụng Index như thế nào? (2)
III.3.3. Đóng, mở các bảng
III.4. Quản trị MySQL
III.5.1. Cấu hình MySQL
III.5.1. Cấu hình MySQL (2)
III.5.2. Bảo mật và hệ thống quyền truy nhập của MySQL
III.5.3. Quản lý tài khoản người dùng
III.5.3.1. Lệnh GRANT & REVOKE
III.5.3.1. Lệnh GRANT & REVOKE (2)
III.5.3.1. Lệnh GRANT & REVOKE (3)
III.5.3.2. Tài khoản & mật khẩu
III.5.3.3. Thêm, xóa người dùng
III.5.3.3. Thêm, xóa người dùng (2)
III.5.3.4. Giới hạn tài nguyên người dùng
III.5.3.5. Thiết lập & duy trì mật khẩu
III.5.4. Các lệnh quản trị MySQL
III.5.4.1. OPTIMIZE TABLE
III.5.4.2. ANALYZE TABLE