MySQL数据库环境与连接方式
搭建MySQL环境并掌握连接方式是开始数据库开发的第一步。
MySQL环境搭建
安装方式对比
| 方式 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 官方安装包 | 完整控制 | 配置复杂 | 生产环境 |
| Docker | 快速部署 | 需Docker基础 | 开发测试 |
| 集成环境 | 一键安装 | 版本受限 | 初学者 |
Docker安装MySQL
Bash
# 拉取MySQL镜像
docker pull mysql:8.0
# 运行MySQL容器
docker run -d \
--name mysql-server \
-e MYSQL_ROOT_PASSWORD=root123 \
-p 3306:3306 \
mysql:8.0
# 进入MySQL容器
docker exec -it mysql-server mysql -uroot -proot123
官方安装包安装
Windows环境:
- 下载MySQL安装包(mysql-installer)
- 运行安装向导,选择Server Only
- 配置root密码
- 完成安装并启动服务
Linux环境:
Bash
# Ubuntu/Debian
sudo apt update
sudo apt install mysql-server
sudo mysql_secure_installation
# CentOS/RHEL
sudo yum install mysql-server
sudo systemctl start mysqld
sudo mysql_secure_installation
验证安装
Bash
# 检查MySQL服务状态
systemctl status mysql
# 查看MySQL版本
mysql --version
mysql -V
MySQL连接方式
命令行连接
Bash
# 基本连接
mysql -h 主机地址 -P 端口 -u 用户名 -p
# 本地连接
mysql -uroot -p
# 远程连接
mysql -h 192.168.1.100 -P 3306 -u root -p
# 指定数据库连接
mysql -uroot -p database_name
# 执行SQL后退出
mysql -uroot -p -e "SELECT VERSION();"
连接参数说明
| 参数 | 说明 | 示例 |
|---|---|---|
| -h | 主机地址 | -h localhost |
| -P | 端口号 | -P 3306 |
| -u | 用户名 | -u root |
| -p | 密码提示 | -p |
| -D | 指定数据库 | -D test |
| -e | 执行SQL | -e "SHOW DATABASES" |
生产环境禁止在命令行直接输入密码(mysql -uroot -ppassword),存在安全风险。
编程语言连接
Python连接:
Python
# 使用mysql-connector-python
import mysql.connector
conn = mysql.connector.connect(
host='localhost',
port=3306,
user='root',
password='root123',
database='test'
)
cursor = conn.cursor()
cursor.execute('SELECT * FROM users')
results = cursor.fetchall()
conn.close()
Java连接:
Java
// 使用JDBC
String url = "jdbc:mysql://localhost:3306/test";
Connection conn = DriverManager.getConnection(url, "root", "root123");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM users");
conn.close();
Node.js连接:
JavaScript
// 使用mysql2
const mysql = require('mysql2');
const conn = mysql.createConnection({
host: 'localhost',
port: 3306,
user: 'root',
password: 'root123',
database: 'test'
});
conn.query('SELECT * FROM users', (err, results) => {
console.log(results);
});
常用客户端工具
命令行工具
| 工具 | 说明 |
|---|---|
| mysql | 官方命令行客户端 |
| mysqladmin | 管理工具 |
| mysqldump | 备份工具 |
图形化工具
| 工具 | 特点 | 适用平台 |
|---|---|---|
| MySQL Workbench | 官方工具,功能全面 | 跨平台 |
| Navicat | 功能强大,收费 | 跨平台 |
| DBeaver | 开源免费,支持多数据库 | 跨平台 |
| DataGrip | JetBrains出品,IDE集成 | 跨平台 |
| phpMyAdmin | Web界面,PHP环境 | Web |
MySQL Workbench连接
- 打开MySQL Workbench
- 点击"+"创建新连接
- 填写连接信息:
- Connection Name: 连接名称
- Hostname: 主机地址
- Port: 端口号
- Username: 用户名
- Password: 密码
- 点击"Test Connection"测试
- 连接成功后进入管理界面
连接池
应用生产环境使用连接池管理数据库连接。
连接池参数
| 参数 | 说明 | 建议值 |
|---|---|---|
| minPoolSize | 最小连接数 | 5-10 |
| maxPoolSize | 最大连接数 | 20-50 |
| connectionTimeout | 连接超时(ms) | 30000 |
| idleTimeout | 空闲超时(ms) | 600000 |
连接池配置示例
YAML
# Spring Boot配置
spring:
datasource:
url: jdbc:mysql://localhost:3306/test
username: root
password: root123
hikari:
minimum-idle: 5
maximum-pool-size: 20
connection-timeout: 30000
连接池大小并非越大越好,需根据服务器配置和并发量调整。
要点总结
- MySQL可通过官方安装包、Docker或集成环境安装
- 命令行连接使用mysql命令,参数包括-h、-P、-u、-p
- 生产环境禁止命令行直接输入密码
- 常用图形化工具有MySQL Workbench、Navicat、DBeaver等
- 生产环境使用连接池管理数据库连接
- 连接池大小需根据实际情况调优
📝 发现内容有误?点击此处直接编辑