Google Cloud SQL là một dịch vụ cơ sở dữ liệu được quản lý hoàn toàn, giúp bạn dễ dàng thiết lập, duy trì, quản lý và quản trị cơ sở dữ liệu MySQL quan hệ của mình trên đám mây.
Trong bài thực hành này, chúng ta sẽ tạo một phiên bản Cloud SQL mới, trống, kết nối với phiên bản đó bằng giao diện dòng lệnh MySQL và tạo một cơ sở dữ liệu mới, trống.
Kiến thức bạn sẽ học được
- Cách truy cập vào giao diện người dùng web Cloud SQL trong Google Cloud Console.
- Cách tạo một phiên bản Cloud SQL bằng Google Cloud Console.
- Cách đặt mật khẩu gốc bằng Google Cloud Console.
- Cách kết nối với phiên bản Cloud SQL thông qua Cloud Shell.
- Cách xoá phiên bản Cloud SQL bằng Google Cloud Console.
Bạn cần có
Bạn sẽ sử dụng hướng dẫn này như thế nào?
Bạn đánh giá thế nào về trải nghiệm sử dụng các dịch vụ của Google Cloud Platform và Firebase?
Thiết lập môi trường theo tốc độ của riêng bạn
Nếu chưa có Tài khoản Google (Gmail hoặc Google Apps), bạn phải tạo một tài khoản. Đăng nhập vào bảng điều khiển Google Cloud Platform (console.cloud.google.com) rồi tạo một dự án mới:
Hãy nhớ mã dự án, một tên duy nhất trong tất cả các dự án trên Google Cloud (tên ở trên đã được sử dụng và sẽ không hoạt động đối với bạn, xin lỗi!). Sau này trong lớp học lập trình này, chúng ta sẽ gọi nó là PROJECT_ID
.
Tiếp theo, bạn cần bật tính năng thanh toán trong Cloud Console để sử dụng các tài nguyên của Google Cloud.
Việc thực hiện lớp học lập trình này sẽ không tốn của bạn quá vài đô la, nhưng có thể tốn nhiều hơn nếu bạn quyết định sử dụng nhiều tài nguyên hơn hoặc nếu bạn để các tài nguyên đó chạy (xem phần "dọn dẹp" ở cuối tài liệu này).
Người dùng mới của Google Cloud Platform đủ điều kiện dùng thử miễn phí 300 USD.
Trong Google Cloud Console, hãy nhấp vào biểu tượng Trình đơn ở trên cùng bên trái màn hình:
Di chuyển xuống rồi chọn SQL trong mục phụ Bộ nhớ:
Lúc này, bạn sẽ thấy giao diện người dùng web Cloud SQL. Giả sử bạn đang sử dụng một dự án hiện không có phiên bản Cloud SQL nào, bạn sẽ thấy một hộp thoại mời bạn tạo một phiên bản Cloud SQL mới.
Nếu đang sử dụng một dự án đã có một hoặc nhiều phiên bản Cloud SQL, bạn sẽ thấy danh sách các phiên bản đó:
Giả sử dự án của bạn không có phiên bản Cloud SQL nào, hãy nhấn vào nút Tạo phiên bản để tạo một phiên bản:
Nếu bạn đang sử dụng một dự án đã có một hoặc nhiều phiên bản Cloud SQL, hãy nhấn vào nút Tạo phiên bản trên màn hình Phiên bản như minh hoạ ở đây:
Trong cả hai trường hợp, bạn sẽ thấy trang Chọn một loại phiên bản. Trong lớp học lập trình này, chúng ta sẽ tạo một phiên bản Cloud SQL thế hệ thứ hai. Nhấp vào Chọn thế hệ thứ hai.
Thao tác này sẽ đưa bạn đến trang Tạo một phiên bản. Tại đây, bạn phải chỉ định tên cho phiên bản của mình. Tên này phải là duy nhất trong dự án của bạn, nhưng không phải trên các dự án. Vì vậy, bạn có thể sử dụng cùng một tên phiên bản codelab-0 như trong ví dụ này, giả sử bạn không có phiên bản Cloud SQL nào khác trong dự án của mình. Nhập "codelab-0" vào hộp Mã nhận dạng phiên bản. Trong phạm vi của lớp học lập trình này, bạn có thể giữ nguyên các giá trị mặc định cho phần còn lại của cấu hình.
Xin lưu ý rằng khi xoá một phiên bản Cloud SQL, bạn không thể dùng lại tên phiên bản đó trong tối đa một tuần. Nếu bạn dự định sử dụng dự án này cho nhiều mục đích hơn là thử nghiệm, hãy nhớ chọn một tên phiên bản khác với bất kỳ tên phiên bản nào mà bạn có thể muốn sử dụng cho công việc thực tế. Nếu không, bạn có thể không sử dụng lại được tên phiên bản đó trong một khoảng thời gian.
Di chuyển xuống cuối trang rồi nhấn vào Tạo.
Bạn sẽ được chuyển đến trang Instances (Phiên bản). Tại đây, bạn sẽ thấy phiên bản mới của mình có một biểu tượng xoay ở bên trái, cho biết phiên bản đó vẫn đang được tạo:
Sau 2 hoặc 3 phút, phiên bản sẽ có sẵn và dấu kiểm màu xanh lục sẽ thay thế biểu tượng quay màu xanh dương. Nhớ thỉnh thoảng làm mới trang:
Giờ đây, bạn đã có thể sử dụng phiên bản Cloud SQL.
Nhấp vào tên phiên bản của bạn để mở trang chi tiết về phiên bản, sau đó nhấp vào Kiểm soát quyền truy cập:
Trên thẻ Kiểm soát quyền truy cập, hãy nhấn vào Người dùng:
Trên thẻ Người dùng, hãy nhấp vào Thay đổi mật khẩu gốc:
Nhập mật khẩu mới trên trang Thay đổi mật khẩu rồi nhấn OK:
Kích hoạt Google Cloud Shell bằng cách nhấn nút lời nhắc trong Google Cloud Console:
Nếu đây là lần đầu tiên bạn sử dụng Google Cloud Shell cho dự án này, thì bạn sẽ thấy màn hình Google Cloud Shell. Nhấn vào Bắt đầu Cloud Shell
Cloud Shell mới sẽ xuất hiện ở cuối Google Cloud Console, sau khi bạn nhấn vào Start Cloud Shell (Bắt đầu Cloud Shell) trên màn hình Google Cloud Shell nếu đây là lần đầu tiên bạn sử dụng Cloud Shell với dự án này, hoặc ngay sau khi nhấn vào nút Activate Google Cloud Shell (Kích hoạt Google Cloud Shell) nếu bạn đã từng sử dụng Cloud Shell trước đây.
Kết nối với phiên bản Cloud SQL bằng lệnh gcloud sql như minh hoạ bên dưới, nhưng hãy thay "codelab-0" bằng tên phiên bản của bạn (nếu khác):
gcloud sql connect codelab-0 --user=root
Bạn sẽ thấy:
$ gcloud sql connect codelab-0 --user=root Whitelisting your IP for incoming connection for 1 minute...done. Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 11302 Server version: 5.6.29-google-log (Google) Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective Owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
Như minh hoạ ở đây, bạn sẽ được nhắc nhập mật khẩu mà bạn đã đặt ở bước trước. Giờ đây, bạn đã có một dấu nhắc MySQL hoạt động đầy đủ, đăng nhập với tư cách là "root". Bạn có thể dùng câu lệnh này để nhập các câu lệnh SQL, chẳng hạn như câu lệnh này để tạo một cơ sở dữ liệu mới có tên là "codelab":
mysql> CREATE DATABASE codelab; Query OK, 1 row affected (0.00 sec)
Nếu Truy vấn trả về OK, thì phiên bản của bạn sẽ hoạt động. Hãy thoát và tải một số dữ liệu mẫu để chạy một số truy vấn thực tế.
Nhập "exit;" rồi nhấn phím Enter để thoát khỏi dấu nhắc mysql.
Chúng ta sẽ tải tập dữ liệu mẫu về nhân viên mà bạn tìm thấy trong tài liệu chính thức của MySQL.
Trước tiên, chúng ta cần tải tập lệnh và dữ liệu xuống:
$ wget https://codeload.github.com/datacharmer/test_db/zip/master -O sampledb.zip $ unzip sampledb.zip && cd test_db-master
Thứ hai, chúng ta cần tạo cơ sở dữ liệu và bảng, đồng thời tải dữ liệu. Một lần nữa, hãy thay thế codelab-0 bằng tên của phiên bản (nếu có):
$ gcloud sql connect codelab-0 --user=root < employees.sql
Bây giờ, chúng ta có thể truy vấn dữ liệu. Bạn có thể xem một số truy vấn mẫu bên dưới. Bạn cũng có thể tự tạo một số truy vấn. Để làm quen với giản đồ db, hãy xem tệp employees.sql
. Đăng nhập vào dấu nhắc sql và chuyển sang cơ sở dữ liệu nhân viên. Tương tự, hãy thay thế codelab-0
bằng tên của phiên bản (nếu khác):
$ gcloud sql connect codelab-0 --user=root mysql> USE employees; Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -A Database changed mysql> SELECT avg(s.salary) avg_salary_by_hire_year, YEAR(e.hire_date) FROM employees e, salaries s WHERE e.emp_no = s.emp_no GROUP BY YEAR(e.hire_date); +-------------------------+-------------------+ | avg_salary_by_hire_year | YEAR(e.hire_date)| +-------------------------+-------------------+ | 66966.7550 | 1985 | | 66187.3453 | 1986 | ... 16 rows in set (2.70 sec) mysql> SELECT de.dept_no, sum(s.salary) sum_salaries_per_department FROM employees e, salaries s, dept_emp de WHERE e.emp_no = de.emp_no AND e.emp_no = s.emp_no GROUP BY de.dept_no; +---------+-----------------------------+ | dept_no | sum_salaries_per_department| +---------+-----------------------------+ | d001 | 13725425266 | | d002 | 11650834677 | ... +---------+-----------------------------+ 9 rows in set (4.22 sec) mysql> exit;
Sau khi bạn hoàn tất việc truy vấn tập dữ liệu mẫu về nhân viên, hãy dùng lệnh "exit" để thoát khỏi dấu nhắc mysql.
Bước này là bước không bắt buộc. Nếu muốn tiếp tục thử nghiệm với phiên bản Cloud SQL, bạn không cần xoá phiên bản đó vào lúc này. Tuy nhiên, dự án mà bạn đang sử dụng sẽ tiếp tục bị tính phí cho phiên bản này. Nếu không cần dùng phiên bản này nữa, bạn nên xoá phiên bản đó ngay để tránh bị tính phí.
Xin lưu ý rằng khi xoá một phiên bản Cloud SQL, bạn không thể dùng lại tên phiên bản đó trong tối đa một tuần.
Bạn có 2 lựa chọn để xoá phiên bản Cloud SQL.
1) Sử dụng gcloud
trong môi trường Cloud Shell. Một lần nữa, hãy thay thế codelab-0 bằng tên của phiên bản (nếu có):
$ gcloud sql instances delete codelab-0 All of the instance data will be lost when the instance is deleted. Do you want to continue (Y/n)? Y Deleting Cloud SQL instance...done. Deleted $
hoặc
2) Quay lại trang phiên bản Cloud SQL bằng cách nhấp vào SQL ở góc trên cùng bên trái:
Mở trình đơn thả xuống bên cạnh phiên bản bạn muốn xoá rồi chọn "Xoá":
Thao tác xoá một phiên bản là thao tác không thể đảo ngược! Bạn không thể khôi phục dữ liệu từ phiên bản đó. Để tránh vô tình xoá nhầm phiên bản, bạn phải xác nhận thao tác xoá bằng cách nhập tên phiên bản trong hộp thoại xác nhận:
Nhập tên phiên bản rồi nhấn vào Xoá.
Bạn đã tạo một phiên bản Cloud SQL mới, định cấu hình mật khẩu gốc, tạo một cơ sở dữ liệu trống và (không bắt buộc) xoá phiên bản Cloud SQL.
Nội dung đã đề cập
- Tạo phiên bản Cloud SQL thông qua Google Cloud Console.
- Thiết lập mật khẩu gốc SQL thông qua Google Cloud Console.
- Kết nối với cơ sở dữ liệu bằng ứng dụng mysql.
- Tạo cơ sở dữ liệu MySQL mới thông qua dấu nhắc mysql.
- Xoá phiên bản Cloud SQL.
Tìm hiểu thêm
- Xem tài liệu về Google Cloud SQL