MySQL là một hệ quản trị cơ sở dữ liệu phổ biến, được sử dụng như là nhà cung cấp lưu trữ dữ liệu cho hàng nghìn ứng dụng web và máy chủ. Hướng dẫn này sẽ giúp người mới bắt đầu làm quen với MySQL trên Fedora 14 Linode. Đối với mục đích của hướng dẫn này, giả sử rằng bạn đã làm theo các bước được nêu trong Thiết lập và Bảo mật Phiên bản Máy tính của chúng tôi, rằng hệ thống của bạn đã được cập nhật và bạn đã đăng nhập vào Linode của mình với tư cách root thông qua SSH.
Cấu hình hệ thống
Đảm bảo rằng /etc/hosts
của bạn tệp có các mục nhập thích hợp, tương tự như những mục được hiển thị bên dưới. Thay thế “12.34.56.78” bằng địa chỉ công khai của Linode, “tên máy chủ” bằng tên máy chủ rút gọn của bạn và “mydomain.com” bằng tên miền hệ thống của bạn.
- Tệp:/ etc / hosts
-
127.0.0.1 localhost.localdomain localhost 12.34.56.78 servername.mydomain.com servername
Đặt tên máy chủ của hệ thống của bạn bằng cách đưa ra các lệnh sau. Thay thế "tên máy chủ" bằng tên máy chủ rút gọn của hệ thống của bạn.
echo "HOSTNAME=servername" >> /etc/sysconfig/network
hostname "servername"
Cài đặt MySQL
Đưa ra các lệnh sau để cập nhật hệ thống của bạn và cài đặt MySQL:
yum update
yum install mysql-server
chkconfig mysqld on
Gói máy chủ MySQL sẽ được cài đặt trên máy chủ của bạn, cùng với các phần phụ thuộc và thư viện máy khách. Khởi động MySQL bằng cách chạy lệnh sau:
service mysqld start
Định cấu hình MySQL
Sau khi cài đặt MySQL, bạn nên chạy mysql_secure_installation
, một chương trình giúp bảo mật MySQL. Trong khi chạy mysql_secure_installation
, bạn sẽ có cơ hội thay đổi mật khẩu gốc MySQL, xóa tài khoản người dùng ẩn danh, vô hiệu hóa thông tin đăng nhập root bên ngoài localhost và xóa cơ sở dữ liệu thử nghiệm. Bạn nên trả lời có cho các tùy chọn này. Nếu bạn được nhắc tải lại các bảng đặc quyền, hãy chọn có. Chạy lệnh sau để thực thi chương trình:
mysql_secure_installation
MySQL sẽ liên kết với localhost (127.0.0.1) theo mặc định. Vui lòng tham khảo hướng dẫn truy cập từ xa MySQLecure của chúng tôi để biết thông tin về cách kết nối với cơ sở dữ liệu của bạn với các máy khách cục bộ.
Không nên cho phép truy cập không hạn chế vào MySQL trên một IP công cộng, nhưng bạn có thể thay đổi địa chỉ mà nó lắng nghe bằng cách sửa đổi bind-address
tham số trong /etc/my.cnf
. Nếu bạn quyết định liên kết MySQL với IP công cộng của mình, bạn nên triển khai các quy tắc tường lửa chỉ cho phép kết nối từ các địa chỉ IP cụ thể.
Nếu bạn đã thực hiện bất kỳ thay đổi nào đối với cấu hình của MySQL, hãy phát hành lệnh sau để khởi động lại nó:
service mysqld restart
Sử dụng MySQL
Công cụ tiêu chuẩn để tương tác với MySQL là mysql
chương trình khách hàng. Để bắt đầu, hãy đưa ra lệnh sau theo lời nhắc của bạn:
mysql -u root -p
Bạn sẽ được nhắc nhập mật khẩu của người dùng MySQL gốc. Nhập mật khẩu bạn đã chỉ định khi cài đặt MySQL và bạn sẽ thấy màn hình MySQL monitor:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.1.52 Source distribution
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 license
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
Để tạo danh sách các lệnh cho lời nhắc MySQL, hãy nhập \h
:
List of all MySQL commands:
Note that all text commands must be first on line and end with ';'
? (\?) Synonym for `help'.
clear (\c) Clear command.
connect (\r) Reconnect to the server. Optional arguments are db and host.
delimiter (\d) Set statement delimiter. NOTE: Takes the rest of the line as new delimiter.
edit (\e) Edit command with $EDITOR.
ego (\G) Send command to mysql server, display result vertically.
exit (\q) Exit mysql. Same as quit.
go (\g) Send command to mysql server.
help (\h) Display this help.
nopager (\n) Disable pager, print to stdout.
notee (\t) Don't write into outfile.
pager (\P) Set PAGER [to_pager]. Print the query results via PAGER.
print (\p) Print current command.
prompt (\R) Change your mysql prompt.
quit (\q) Quit mysql.
rehash (\#) Rebuild completion hash.
source (\.) Execute an SQL script file. Takes a file name as an argument.
status (\s) Get status information from the server.
system (\!) Execute a system shell command.
tee (\T) Set outfile [to_outfile]. Append everything into given outfile.
use (\u) Use another database. Takes database name as argument.
charset (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
warnings (\W) Show warnings after every statement.
nowarning (\w) Don't show warnings after every statement.
For server side help, type 'help contents'
mysql>
Hãy tạo một cơ sở dữ liệu và chỉ định một người dùng cho nó. Đưa ra các lệnh sau tại dấu nhắc MySQL:
CREATE DATABASE testdb;
CREATE USER 'testuser'@localhost IDENTIFIED BY 'CHANGEME';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@localhost;
exit
Bây giờ, hãy đăng nhập lại vào máy khách MySQL với tư cách là testuser
và tạo một bảng mẫu có tên là “khách hàng”. Đưa ra các lệnh sau:
mysql -u testuser -p
USE testdb;
CREATE TABLE customers (customer_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, first_name TEXT, last_name TEXT);
exit
Thao tác này tạo một bảng có trường ID khách hàng thuộc loại INT cho số nguyên (tự động tăng dần cho các bản ghi mới, được sử dụng làm khóa chính), cũng như hai trường để lưu trữ tên của khách hàng. Tất nhiên, bạn có thể muốn lưu trữ nhiều thông tin hơn mức này cho khách hàng, nhưng dù sao thì đó cũng là một ví dụ điển hình về trường hợp phổ biến.
Cách đặt lại mật khẩu gốc của MySQL
Nếu bạn quên mật khẩu MySQL gốc của mình, bạn có thể đặt lại mật khẩu đó bằng cách đưa ra các lệnh sau:
service mysqld stop
mysqld_safe --skip-grant-tables &
mysql -u root
Phần sau của quá trình đặt lại mật khẩu bây giờ sẽ được thực hiện trong chương trình máy khách MySQL:
USE mysql;
UPDATE user SET PASSWORD=PASSWORD("CHANGEME") WHERE User='root';
FLUSH PRIVILEGES;
exit
Cuối cùng, khởi động lại MySQL bằng cách phát hành lệnh sau:
service mysqld restart
Điều chỉnh MySQL
MySQL Tuner là một công cụ hữu ích kết nối với phiên bản MySQL đang chạy và cung cấp các đề xuất cấu hình dựa trên khối lượng công việc. Lý tưởng nhất là phiên bản MySQL phải hoạt động ít nhất 24 giờ trước khi chạy bộ chỉnh. Phiên bản đã chạy càng lâu, MySQL Tuner sẽ cung cấp lời khuyên tốt hơn.
Để cài đặt MySQL Tuner, hãy sử dụng lệnh sau:
yum install mysqltuner
Để chạy MySQL Tuner, chỉ cần nhập:
mysqltuner
Xin lưu ý rằng công cụ này được thiết kế để cung cấp các đề xuất cấu hình và là một điểm khởi đầu tuyệt vời. Sẽ rất thận trọng nếu thực hiện nghiên cứu bổ sung để điều chỉnh cấu hình dựa trên (các) ứng dụng sử dụng MySQL.
Thông tin khác
Bạn có thể muốn tham khảo các nguồn sau đây để biết thêm thông tin về chủ đề này. Mặc dù những điều này được cung cấp với hy vọng rằng chúng sẽ hữu ích, xin lưu ý rằng chúng tôi không thể đảm bảo tính chính xác hoặc kịp thời của các tài liệu được lưu trữ bên ngoài.
- Hướng dẫn sử dụng tham chiếu MySQL 5.1
- Hướng dẫn sử dụng PHP MySQL
- Các ví dụ về Perl DBI cho DBD ::mysql
- Hướng dẫn sử dụng MySQLdb