Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Triển khai Cơ sở dữ liệu quan hệ MySQL trên Ubuntu 12.04 (Precise Pangolin)

MySQL là một hệ quản trị cơ sở dữ liệu phổ biến được sử dụng cho các ứng dụng web và máy chủ. Hướng dẫn này sẽ giới thiệu cách cài đặt, cấu hình và quản lý MySQL trên Linode chạy Ubuntu 12.04 LTS (Precise Pangolin).

Lưu ý Hướng dẫn này được viết cho người dùng không phải root. Các lệnh yêu cầu đặc quyền nâng cao có tiền tố là sudo . Nếu bạn không quen với sudo lệnh, bạn có thể xem hướng dẫn Người dùng và Nhóm của chúng tôi.

Điều kiện tiên quyết

  1. Nếu bạn chưa làm như vậy, hãy tạo một tài khoản Linode và Compute Instance. Xem hướng dẫn Bắt đầu với Linode và Tạo phiên bản Máy tính của chúng tôi.

  2. Làm theo hướng dẫn Thiết lập và Bảo mật Phiên bản Máy tính của chúng tôi để cập nhật hệ thống và định cấu hình tên máy chủ của bạn. Bạn cũng có thể muốn đặt múi giờ, tạo tài khoản người dùng hạn chế và tăng cường quyền truy cập SSH.

    Để kiểm tra tên máy chủ của bạn chạy:

    hostname
    hostname -f
    

    Lệnh đầu tiên sẽ hiển thị tên máy chủ ngắn của bạn và lệnh thứ hai sẽ hiển thị tên miền đủ điều kiện (FQDN) của bạn nếu bạn đã chỉ định một tên miền.

Cài đặt MySQL

sudo apt-get install mysql-server

Trong quá trình cài đặt, bạn sẽ được nhắc đặt mật khẩu cho người dùng gốc MySQL như hình dưới đây. Chọn một mật khẩu mạnh và giữ nó ở nơi an toàn để tham khảo sau này.

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 MySQL 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 bằng đường hầm SSH.

Lưu ý 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 ràng buộc 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ể.

Máy chủ MySQL Harden

Chạy tập lệnh mysql_secure_installation để giải quyết một số lo ngại về bảo mật trong cài đặt MySQL mặc định.

sudo mysql_secure_installation

Bạn sẽ được lựa chọn để 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 đăng nhập cơ sở dữ liệu gốc 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. Bạn có thể đọc thêm về tập lệnh trong Hướng dẫn tham khảo MySQL.

Triển khai MySQL

Công cụ tiêu chuẩn để tương tác với MySQL là mysql máy khách cài đặt bằng mysql-server gói hàng.

Root Login

  1. Để đăng nhập vào MySQL với tư cách người dùng gốc:

    mysql -u root -p
    
  2. Khi được nhắc, hãy nhập mật khẩu gốc mà bạn đã chỉ định khi mysql_secure_installation tập lệnh đã được chạy.

    Sau đó, bạn sẽ được hiển thị với lời nhắc theo dõi MySQL:

    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 1
    Server version: 5.0.45 Source distribution
    
    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
    
    mysql>
    
  3. Để tạo danh sách các lệnh cho lời nhắc MySQL, hãy nhập \h . Sau đó, bạn sẽ thấy:

    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>
    

Tạo Cơ sở dữ liệu và Người dùng MySQL Mới

  1. Trong ví dụ dưới đây, testdb là tên của cơ sở dữ liệu, testuser là người dùng và password là mật khẩu của người dùng.

    create database testdb;
    create user 'testuser'@localhost identified by 'password';
    grant all on testdb.* to 'testuser';
    

    Bạn có thể rút ngắn quy trình này bằng cách tạo người dùng while gán quyền cơ sở dữ liệu:

    create database testdb;
    grant all on testdb.* to 'testuser' identified by 'password';
    
  2. Thoát MySQL.

    exit
    

Tạo bảng mẫu

  1. Đăng nhập lại với tư cách testuser .

    mysql -u testuser -p
    
  2. Tạo một bảng mẫu có tên là customers . 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 lên đối với 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.

    use testdb;
    create table customers (customer_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, first_name TEXT, last_name TEXT);
    
  3. Sau đó thoát khỏi MySQL.

    exit
    

Đặ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 này.

  1. Dừng phiên bản máy chủ MySQL hiện tại.

    sudo service mysql stop
    
  2. Sử dụng dpkg để chạy lại quá trình cấu hình MySQL trải qua trong lần cài đặt đầu tiên. Bạn sẽ lại được yêu cầu đặt mật khẩu gốc.

    sudo dpkg-reconfigure mysql-server-5.5
    

Bây giờ bạn có thể đăng nhập lại bằng mysql -u root -p .

Chỉnh MySQL

MySQL Tuner là một tập lệnh Perl kết nối với một 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. Các đề xuất của MySQL Tuner sẽ chính xác hơn khi phiên bản đã chạy lâu hơn.

  1. Cài đặt MySQL Tuner từ kho lưu trữ của Ubuntu.

    sudo apt-get install mysqltuner
    
  2. Để chạy nó:

    mysqltuner
    

    Bạn sẽ được hỏi về tên và mật khẩu của người dùng gốc MySQL. Kết quả đầu ra sẽ hiển thị hai lĩnh vực quan tâm:Các khuyến nghị chung và Các biến số cần điều chỉnh.

MySQL Tuner là một điểm khởi đầu tuyệt vời để tối ưu hóa máy chủ MySQL, nhưng nghiên cứu bổ sung được khuyến nghị cho các cấu hình phù hợp với (các) ứng dụng sử dụng MySQL trên Linode của bạn.

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

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách sao lưu / khôi phục MySQL / MariaDB và PostgreSQL bằng công cụ ‘Automysqlbackup’ và ‘Autopostgresqlbackup’

  2. HIỂN THỊ BẢNG BIỂU trong MySQL

  3. Lấy chuỗi truy vấn SQL thô từ các câu lệnh chuẩn bị sẵn của PDO

  4. MySQL bù đắp các hàng vô hạn

  5. Cách tránh chèn các bản ghi trùng lặp trong MySQL