MySQL is an open source relational database management system that is widely used in the fields of information management, data storage and information processing. Building a MySQL database on a Linux server can greatly improve data security and reduce system maintenance costs. This article will introduce the steps and precautions for building a MySQL database under a Linux system.
1. Install MySQL
You can install MySQL on a Linux system using the command line or the installation program.
- Command line installation
Run the following command in the terminal to install MySQL:
sudo apt-get update sudo apt-get install mysql-server
After executing the above command, the system will automatically download and install the MySQL database .
- Installation program
Download the MySQL installation program from the official website and install it according to the prompts. During the installation process, you need to set the MySQL root user password. This password is very important and must be kept properly.
2. Configure MySQL
- Modify the configuration file
Open the MySQL configuration file/etc/mysql/mysql.conf.d/ mysqld.cnf
, modify the following parameters:
bind-address = 0.0.0.0
This allows remote connection to the MySQL database.
- Configure firewall
If the system uses iptables firewall, port 3306 needs to be opened for external access to the MySQL database:
sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
If you use ufw Firewall, you need to run the following command:
sudo ufw allow mysql
3. Create database and user
- Log in to MySQL
Run the following command in the terminal with root permissions Enter MySQL:
mysql -u root -p
After entering the root password, you can log in to MySQL.
- Create database and user
Use the following command to create a database named "exampledb":
CREATE DATABASE exampledb;
Then create a database named "exampleuser" User and set a password for it:
CREATE USER 'exampleuser'@'%' IDENTIFIED BY 'password';
Note that the "%" here means that you can connect to the database from any IP address; if you only want to connect locally, change "%" to "localhost".
Assign all permissions to "exampleuser" to the "exampledb" database:
GRANT ALL PRIVILEGES ON exampledb.* TO 'exampleuser'@'%';
Finally use the following command to make the configuration take effect immediately:
FLUSH PRIVILEGES;
4. Connect to MySQL
When connecting to MySQL on the client, you need to provide the database address, port, username and password. If you want to connect to MySQL from the Internet, you will need to enter the server's public IP address. The following is a sample code for using Python to connect to MySQL:
import mysql.connector config = { 'user': 'exampleuser', 'password': 'password', 'host': '192.168.1.100', 'port': '3306', 'database': 'exampledb', 'raise_on_warnings': True } cnx = mysql.connector.connect(**config) cursor = cnx.cursor() query = ("SELECT * FROM example_table") cursor.execute(query) for row in cursor.fetchall(): print(row) cursor.close() cnx.close()
5. Performance optimization
You need to pay attention to some performance optimization issues when using MySQL. The following are some common optimization measures:
- Use indexes: Creating indexes on frequently queried fields can speed up queries.
- Optimize query statements: Through reasonable query statements, full table scans and the creation of temporary tables can be avoided, thereby improving query efficiency.
- Design reasonable table structure: Designing table fields, indexes, data types and other attributes can avoid unnecessary data conversion and calculation, thereby improving data processing efficiency.
- Regular maintenance: Regularly cleaning unnecessary data, optimizing the table structure and query statements of the database can improve performance.
Summary:
Through the introduction of this article, readers can understand the steps and precautions for building a MySQL database on a Linux system, as well as some common performance optimization measures. Using a combination like Linux MySQL can provide efficient database solutions for areas such as information management, data storage, and information processing.
The above is the detailed content of mysql build linux. For more information, please follow other related articles on the PHP Chinese website!

This article explores optimizing MySQL memory usage in Docker. It discusses monitoring techniques (Docker stats, Performance Schema, external tools) and configuration strategies. These include Docker memory limits, swapping, and cgroups, alongside

This article addresses MySQL's "unable to open shared library" error. The issue stems from MySQL's inability to locate necessary shared libraries (.so/.dll files). Solutions involve verifying library installation via the system's package m

The article discusses using MySQL's ALTER TABLE statement to modify tables, including adding/dropping columns, renaming tables/columns, and changing column data types.

This article compares installing MySQL on Linux directly versus using Podman containers, with/without phpMyAdmin. It details installation steps for each method, emphasizing Podman's advantages in isolation, portability, and reproducibility, but also

This article provides a comprehensive overview of SQLite, a self-contained, serverless relational database. It details SQLite's advantages (simplicity, portability, ease of use) and disadvantages (concurrency limitations, scalability challenges). C

This guide demonstrates installing and managing multiple MySQL versions on macOS using Homebrew. It emphasizes using Homebrew to isolate installations, preventing conflicts. The article details installation, starting/stopping services, and best pra

Article discusses configuring SSL/TLS encryption for MySQL, including certificate generation and verification. Main issue is using self-signed certificates' security implications.[Character count: 159]

Article discusses popular MySQL GUI tools like MySQL Workbench and phpMyAdmin, comparing their features and suitability for beginners and advanced users.[159 characters]


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SublimeText3 English version
Recommended: Win version, supports code prompts!

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)
