Làm thế nào để tôi có được mysql trên linux?

MySQL là một cơ sở dữ liệu quan hệ mã nguồn mở miễn phí và được sử dụng rộng rãi. Đó là một lựa chọn tốt nếu bạn biết rằng bạn cần một cơ sở dữ liệu nhưng không biết nhiều về tất cả các tùy chọn có sẵn

Bài viết này mô tả cài đặt cơ bản của máy chủ cơ sở dữ liệu MySQL trên hệ điều hành Ubuntu. Bạn có thể cần cài đặt các gói khác để cho phép các ứng dụng sử dụng MySQL, chẳng hạn như các tiện ích mở rộng cho PHP. Kiểm tra tài liệu ứng dụng của bạn để biết chi tiết

Cài đặt máy chủ MySQL bằng trình quản lý gói hệ điều hành Ubuntu

sudo apt-get update
sudo apt-get install mysql-server

Trình cài đặt cài đặt MySQL và tất cả các phụ thuộc

Nếu tiện ích cài đặt an toàn không tự động khởi chạy sau khi cài đặt hoàn tất, hãy nhập lệnh sau

sudo mysql_secure_installation utility

Tiện ích này nhắc bạn xác định mật khẩu gốc mysql và các tùy chọn liên quan đến bảo mật khác, bao gồm xóa quyền truy cập từ xa đối với người dùng gốc và đặt mật khẩu gốc

Cho phép truy cập từ xa

Nếu bạn đã bật iptables và muốn kết nối với cơ sở dữ liệu MySQL từ một máy khác, bạn phải mở một cổng trong tường lửa của máy chủ (cổng mặc định là 3306). Bạn không cần làm điều này nếu ứng dụng sử dụng MySQL đang chạy trên cùng một máy chủ

Chạy lệnh sau để cho phép truy cập từ xa vào máy chủ mysql

sudo ufw enable
sudo ufw allow mysql

Bắt đầu dịch vụ MySQL

Sau khi cài đặt hoàn tất, bạn có thể khởi động dịch vụ cơ sở dữ liệu bằng cách chạy lệnh sau. Nếu dịch vụ đã bắt đầu, một thông báo cho bạn biết rằng dịch vụ đang chạy

sudo systemctl start mysql

Khởi chạy khi khởi động lại

Để đảm bảo rằng máy chủ cơ sở dữ liệu khởi chạy sau khi khởi động lại, hãy chạy lệnh sau

sudo systemctl enable mysql

Cấu hình giao diện

MySQL, theo mặc định không còn bị ràng buộc (nghe trên) bất kỳ giao diện có thể truy cập từ xa nào. Chỉnh sửa chỉ thị “bind-address” trong /etc/mysql/mysql. conf. d/mysqld. cnf

bind-address		= 127.0.0.1 ( The default. )
bind-address		= XXX.XXX.XXX.XXX ( The ip address of your Public Net interface. )
bind-address		= ZZZ.ZZZ.ZZZ.ZZZ ( The ip address of your Service Net interface. )
bind-address		= 0.0.0.0 ( All ip addresses. )

Khởi động lại dịch vụ mysql

sudo systemctl restart mysql

Bắt đầu vỏ mysql

Có nhiều cách để làm việc với máy chủ MySQL, nhưng bài viết này tập trung vào cách tiếp cận cơ bản và tương thích nhất, shell

sudo ufw enable
sudo ufw allow mysql
3

  1. Tại dấu nhắc lệnh, hãy chạy lệnh sau để khởi chạy shell

    sudo ufw enable
    sudo ufw allow mysql
    
    3 và nhập nó với tư cách người dùng root

    /usr/bin/mysql -u root -p
    
  2. Khi bạn được nhắc nhập mật khẩu, hãy nhập mật khẩu mà bạn đã đặt khi cài đặt hoặc nếu bạn chưa đặt mật khẩu, hãy nhấn Enter để không gửi mật khẩu

    Dấu nhắc trình bao

    sudo ufw enable
    sudo ufw allow mysql
    
    3 sau đây sẽ xuất hiện

    sudo mysql_secure_installation utility
    
    1

Đặt mật khẩu gốc

Nếu bạn đã đăng nhập bằng cách nhập mật khẩu trống hoặc nếu bạn muốn thay đổi mật khẩu gốc mà bạn đã đặt, bạn có thể tạo hoặc thay đổi mật khẩu

  1. Đối với các phiên bản cũ hơn MySQL 5. 7, nhập lệnh sau vào shell

    sudo ufw enable
    sudo ufw allow mysql
    
    3, thay thế
    sudo ufw enable
    sudo ufw allow mysql
    
    7 bằng mật khẩu mới của bạn

    sudo mysql_secure_installation utility
    
    4

    Đối với phiên bản MySQL 5. 7 trở lên, hãy nhập lệnh sau vào shell

    sudo ufw enable
    sudo ufw allow mysql
    
    3, thay thế
    sudo ufw enable
    sudo ufw allow mysql
    
    7 bằng mật khẩu mới của bạn

    sudo mysql_secure_installation utility
    
    0
  2. Để thay đổi có hiệu lực, hãy tải lại thông tin người dùng được lưu trữ bằng lệnh sau

    sudo mysql_secure_installation utility
    
    1

    Ghi chú. Chúng tôi đang sử dụng chữ viết hoa toàn bộ cho các lệnh SQL. Nếu bạn gõ các lệnh bằng chữ thường, chúng sẽ hoạt động. Theo quy ước, các lệnh được viết bằng chữ in hoa toàn bộ để làm cho chúng nổi bật so với tên trường và dữ liệu khác đang được thao tác

Nếu sau này bạn cần đặt lại mật khẩu gốc, hãy xem Đặt lại mật khẩu gốc MySQL

Xem người dùng

MySQL lưu trữ thông tin người dùng trong cơ sở dữ liệu của chính nó. Tên của cơ sở dữ liệu là mysql. Bên trong cơ sở dữ liệu đó, thông tin người dùng nằm trong một bảng, một tập dữ liệu, được đặt tên là người dùng. Nếu bạn muốn xem những người dùng nào được thiết lập trong bảng người dùng MySQL, hãy chạy lệnh sau

sudo mysql_secure_installation utility
2

Danh sách sau đây mô tả các phần của lệnh đó

  • CHỌN nói với MySQL rằng bạn đang yêu cầu dữ liệu
  • Người dùng, Máy chủ, chuỗi xác thực cho MySQL biết bạn muốn nó tìm kiếm những trường nào. Các trường là các danh mục cho dữ liệu trong một bảng. Trong trường hợp này, bạn đang tìm kiếm tên người dùng, máy chủ được liên kết với tên người dùng và mục nhập mật khẩu được mã hóa
  • TỪ mysql. người dùng " yêu cầu MySQL lấy dữ liệu từ cơ sở dữ liệu mysql và bảng người dùng
  • Dấu chấm phẩy (;) kết thúc lệnh

Ghi chú. Tất cả các truy vấn SQL kết thúc bằng dấu chấm phẩy. MySQL không xử lý truy vấn cho đến khi bạn nhập dấu chấm phẩy

Máy chủ của người dùng

Ví dụ sau là đầu ra cho truy vấn trước

sudo mysql_secure_installation utility
3

Người dùng được liên kết với một máy chủ, cụ thể là máy chủ mà họ kết nối từ đó. Người dùng root trong ví dụ này được xác định cho localhost, cho địa chỉ IP của localhost và tên máy chủ của máy chủ. Thông thường, bạn chỉ cần đặt người dùng cho một máy chủ, máy chủ mà bạn thường kết nối từ đó

Nếu bạn đang chạy ứng dụng của mình trên cùng một máy tính với máy chủ MySQL, thì máy chủ mà nó kết nối theo mặc định là máy chủ cục bộ. Bất kỳ người dùng mới nào bạn tạo phải có localhost trong trường Máy chủ của họ

Nếu ứng dụng của bạn kết nối từ xa, mục nhập máy chủ mà MySQL tìm kiếm là địa chỉ IP hoặc tên máy chủ DNS của máy tính từ xa (máy khách đang đến từ đó)

Người dùng ẩn danh

Trong kết quả ví dụ, một mục nhập có giá trị máy chủ lưu trữ nhưng không có tên người dùng hoặc mật khẩu. Đó là một người dùng ẩn danh. Khi một ứng dụng khách kết nối mà không có tên người dùng được chỉ định, nó đang cố gắng kết nối với tư cách là một người dùng ẩn danh

Bạn thường không muốn bất kỳ người dùng ẩn danh nào, nhưng một số cài đặt MySQL bao gồm một người dùng theo mặc định. Nếu bạn thấy một tên, bạn nên xóa người dùng (tham khảo tên người dùng có dấu ngoặc kép trống, như ' ‘) hoặc đặt mật khẩu cho nó

Tạo cơ sở dữ liệu

Có sự khác biệt giữa máy chủ cơ sở dữ liệu và cơ sở dữ liệu, mặc dù các thuật ngữ đó thường được sử dụng thay thế cho nhau. MySQL là một máy chủ cơ sở dữ liệu, có nghĩa là nó theo dõi cơ sở dữ liệu và kiểm soát quyền truy cập vào chúng. Cơ sở dữ liệu lưu trữ dữ liệu và đó là cơ sở dữ liệu mà các ứng dụng đang cố truy cập khi chúng tương tác với MySQL

Một số ứng dụng tạo cơ sở dữ liệu như một phần của quy trình thiết lập, nhưng những ứng dụng khác yêu cầu bạn tự tạo cơ sở dữ liệu và thông báo cho ứng dụng về cơ sở dữ liệu đó

Để tạo cơ sở dữ liệu, hãy đăng nhập vào shell

sudo ufw enable
sudo ufw allow mysql
3 và chạy lệnh sau, thay thế
sudo systemctl start mysql
1 bằng tên của cơ sở dữ liệu mà bạn muốn tạo

sudo mysql_secure_installation utility
4

Sau khi cơ sở dữ liệu được tạo, bạn có thể xác minh việc tạo cơ sở dữ liệu bằng cách chạy truy vấn để liệt kê tất cả cơ sở dữ liệu. Ví dụ sau đây hiển thị truy vấn và đầu ra ví dụ

sudo mysql_secure_installation utility
5

Thêm người dùng cơ sở dữ liệu

Khi các ứng dụng kết nối với cơ sở dữ liệu bằng người dùng root, chúng thường có nhiều đặc quyền hơn mức cần thiết. Bạn có thể thêm người dùng mà các ứng dụng có thể sử dụng để kết nối với cơ sở dữ liệu mới. Trong ví dụ sau, một người dùng có tên demouser được tạo

  1. Để tạo người dùng mới, hãy chạy lệnh sau trong trình bao

    sudo ufw enable
    sudo ufw allow mysql
    
    3

    sudo mysql_secure_installation utility
    
    6
  2. Khi bạn thực hiện các thay đổi đối với bảng người dùng trong cơ sở dữ liệu mysql, hãy yêu cầu MySQL đọc các thay đổi bằng cách xóa các đặc quyền, như sau

    sudo mysql_secure_installation utility
    
    1
  3. Xác minh rằng người dùng đã được tạo bằng cách chạy lại truy vấn CHỌN

    sudo mysql_secure_installation utility
    
    8

Cấp quyền cho người dùng cơ sở dữ liệu

Ngay sau khi bạn tạo một người dùng mới, nó không có đặc quyền. Người dùng có thể đăng nhập, nhưng không thể sử dụng để thực hiện bất kỳ thay đổi cơ sở dữ liệu nào

  1. Cấp cho người dùng toàn quyền đối với cơ sở dữ liệu mới của bạn bằng cách chạy lệnh sau

    sudo mysql_secure_installation utility
    
    9
  2. Xóa các đặc quyền để thực hiện thay đổi chính thức bằng cách chạy lệnh sau

    sudo mysql_secure_installation utility
    
    1
  3. Để xác minh rằng các đặc quyền đó đã được đặt, hãy chạy lệnh sau

    sudo ufw enable
    sudo ufw allow mysql
    
    1

    MySQL trả về các lệnh cần thiết để tái tạo quyền của người dùng đó nếu bạn xây dựng lại máy chủ.

    sudo systemctl start mysql
    
    3 có nghĩa là người dùng không có đặc quyền đối với bất kỳ thứ gì theo mặc định. Lệnh đó bị ghi đè bởi lệnh thứ hai, đây là lệnh bạn đã chạy cho cơ sở dữ liệu mới

    sudo ufw enable
    sudo ufw allow mysql
    
    2

Tóm lược

Nếu bạn chỉ đang tạo cơ sở dữ liệu và người dùng, bạn đã hoàn tất. Các khái niệm được đề cập ở đây sẽ cung cấp cho bạn một khởi đầu vững chắc để tìm hiểu thêm

Tôi có thể tìm MySQL ở đâu trong Linux?

Kiểm tra phiên bản MySQL bằng lệnh V. Cách dễ nhất để tìm phiên bản MySQL là bằng lệnh. mysql -V. .
Cách tìm số phiên bản bằng lệnh mysql. Máy khách dòng lệnh MySQL là một trình bao SQL đơn giản với khả năng chỉnh sửa đầu vào. .
Câu lệnh SHOW VARIABLES LIKE. .
CHỌN PHIÊN BẢN Tuyên bố. .
Lệnh TÌNH TRẠNG

Linux có đi kèm với MySQL không?

Nhiều bản phân phối Linux bao gồm một phiên bản của máy chủ MySQL , công cụ máy khách và các thành phần phát triển trong kho phần mềm gốc của chúng và có thể được cài đặt với hệ thống quản lý gói tiêu chuẩn của nền tảng.

MySQL có miễn phí cho Linux không?

MySQL Community Edition là phiên bản có thể tải xuống miễn phí của cơ sở dữ liệu nguồn mở phổ biến nhất thế giới được hỗ trợ bởi cộng đồng tích cực gồm những người đam mê và nhà phát triển nguồn mở. MySQL Cluster Community Edition có sẵn dưới dạng bản tải xuống riêng.

Làm cách nào để mở MySQL trên Linux?

Để khởi chạy ứng dụng khách, hãy nhập lệnh sau vào cửa sổ Dấu nhắc Lệnh. mysql -u root -p . Tùy chọn -p chỉ cần thiết nếu mật khẩu gốc được xác định cho MySQL. Nhập mật khẩu khi được nhắc.