MySQL 数据库完全指南
什么是 MySQL
MySQL 是网络应用中最常用的数据库管理系统(DBMS),使用 SQL(结构化查询语言)来管理数据。它是开源免费的——WordPress、Drupal、Joomla、Magento 以及数百万个其他应用都在使用 MySQL。
MySQL vs MariaDB
MariaDB 是由原始 MySQL 开发者在 Oracle 收购 MySQL 后创建的 MySQL 分叉版本。与 MySQL 兼容性达 99% 以上,但某些功能有所不同。许多虚拟主机商因其在某些工作负载中的性能优势而选择使用 MariaDB 而不是 MySQL。
数据库用户
在 cPanel 中,依次进入 MySQL Databases → Create Database → Create User → Assign User to Database,并设置权限。应创建具有最少必需权限的用户——千万不要在应用程序中使用 root 用户。
什么是索引
MySQL 中的索引是一种数据结构,可加快查询速度——就像书籍的索引帮你快速查找页码,不用翻遍整本书。WHERE、JOIN 和 ORDER BY 子句中使用的列应该建立索引。没有索引 = 全表扫描 = 速度慢。
优化 MySQL 配置
将 innodb_buffer_pool_size 设置为 RAM 的 50-70%(大多数 WordPress 使用 InnoDB 表)。对于读取密集的网站,启用 query_cache_size。根据你的流量适当设置 max_connections——不要超过必要值。
备份:MySQL 数据库备份
数据库备份至关重要。最简单的方法是使用 mysqldump,它可导出 SQL 文件,并通过计划任务(Cron Job)自动执行。在 cPanel 中,可使用 Backups 部分中的 MySQL Backup,或 phpMyAdmin 的导出功能。
安全性:MySQL 安全设置
禁用远程 root 登录、使用最低权限用户、设置强密码、如不需要远程访问则阻止 MySQL 端口(3306)外部访问,在新安装后运行 mysql_secure_installation。
查询性能优化
启用 slow_query_log 来记录耗时超过 N 秒的查询。使用 EXPLAIN 查看查询计划和索引使用情况。如果 EXPLAIN 显示 type=ALL,说明是全表扫描,需要添加索引。用 SHOW PROCESSLIST 查看当前运行中的查询。
什么是 phpMyAdmin
phpMyAdmin 是一个基于网络的 MySQL 管理界面。每个 cPanel/DirectAdmin 安装都包含 phpMyAdmin,允许表浏览、查询执行、数据库导入/导出、索引创建和用户管理。