安装与部署
在 Linux 64 位系统上部署 MySQL 5.5,需先确保系统环境兼容,以 CentOS 7 为例,首先通过 uname -a 确认系统架构为 x86_64,然后关闭防火墙或开放 3306 端口:systemctl stop firewalld 或 firewall-cmd --add-port=3306/tcp --permanent,下载 MySQL 5.5 的 64 位 RPM 安装包,推荐从官方镜像源获取,如 mysql-5.5.62-1.linux2.6.x86_64.rpm-bundle.tar,解压后使用 rpm -ivh MySQL-server-5.5.62-1.linux2.6.x86_64.rpm 安装服务端,再通过 rpm -ivh MySQL-client-5.5.62-1.linux2.6.x86_64.rpm 安装客户端,安装完成后,执行 mysql_install_db --basedir=/usr --datadir=/var/lib/mysql 初始化数据目录,并使用 service mysql start 启动服务,首次登录需通过 mysqladmin -u root password 'new_password' 设置 root 用户密码。

核心配置
MySQL 5.5 的主要配置文件为 /etc/my.cnf,合理优化参数可提升性能,在 [mysqld] 段落中,关键配置包括:
- 数据存储:
datadir=/var/lib/mysql指定数据目录,innodb_file_per_table=1为每个表创建独立表文件,便于管理。 - 内存分配:
innodb_buffer_pool_size=2G(建议为物理内存的 50%-70%),key_buffer_size=512M用于 MyISAM 表的索引缓存。 - 连接设置:
max_connections=500调整最大并发连接数,wait_timeout=30避免无效连接占用资源。 - 日志配置:
slow_query_log=1启用慢查询日志,long_query_time=2记录执行超过 2 秒的查询,便于后续优化。
修改配置后需重启服务service mysql restart使其生效。
用户与权限管理
MySQL 5.5 的权限系统通过 GRANT 语句实现精细控制,创建新用户需指定主机和密码,如 CREATE USER 'app_user'@'192.168.1.%' IDENTIFIED BY 'ComplexPass123!';授予特定数据库权限时,使用 GRANT SELECT, INSERT, UPDATE ON mydb.* TO 'app_user'@'192.168.1.%',SELECT, INSERT, UPDATE 为允许的操作类型,mydb.* 表示作用范围为 mydb 数据库的所有表,权限修改后需执行 FLUSH PRIVILEGES 刷新权限表,为安全起见,建议定期通过 SELECT host, user, password_last_changed FROM mysql.user 检查用户密码更新情况,并及时撤销闲置用户权限,如 REVOKE ALL PRIVILEGES FROM 'old_user'@'localhost'。

备份与恢复
数据备份是保障系统稳定的关键,MySQL 5.5 提供多种备份方式:
- 逻辑备份:使用
mysqldump工具,如mysqldump -u root -p mydb > mydb_backup.sql备份单个数据库,mysqldump --all-databases > full_backup.sql备份所有数据库,若需压缩备份,可添加| gzip > mydb_backup.sql.gz参数。 - 物理备份:对于 InnoDB 表,可直接复制
/var/lib/mysql目录下的数据文件,但需确保 MySQL 服务停止以避免数据不一致。
恢复时,逻辑备份可通过mysql -u root -p mydb < mydb_backup.sql导入,物理备份则需将文件放回原目录并重启服务,建议结合crontab设置定时任务,如每天凌晨 2 点执行备份脚本,并将备份文件存储至远程服务器或云存储。
日常维护
定期维护可确保 MySQL 5.5 长期稳定运行,通过 SHOW PROCESSLIST 查看当前连接状态,识别并终止长时间运行的查询(如 KILL [ID]),优化表结构,使用 ANALYZE TABLE mytable 更新索引统计信息,OPTIMIZE TABLE mytable 碎片整理(适用于 MyISAM 和 InnoDB 表),日志管理方面,定期清理慢查询日志和二进制日志(mysqladmin -u root -p flush-logs),避免占用过多磁盘空间,监控磁盘空间、内存使用率和查询性能,可通过 SHOW VARIABLES LIKE '%buffer%' 检查内存配置,或使用 EXPLAIN 分析慢查询语句的执行计划,针对性优化索引或 SQL 语句。



















