位置: 文档库 > 数据库 > 文档下载预览

《Linux下源码编译MySQL 5.5 与安装过程全记录.doc》

1. 下载的文档为doc格式,下载后可用word或者wps进行编辑;

2. 将本文以doc文档格式下载到电脑,方便收藏和打印;

3. 下载后的文档,内容与下面显示的完全一致,下载之前请确认下面内容是否您想要的,是否完整.

点击下载文档

Linux下源码编译MySQL 5.5 与安装过程全记录.doc

《Linux下源码编译MySQL 5.5与安装过程全记录》

一、引言

MySQL作为开源关系型数据库的代表,以其高性能、高可靠性和易用性成为Web应用的首选。尽管现代Linux发行版已提供预编译的MySQL包,但通过源码编译安装可灵活定制配置参数、优化性能,并解决版本兼容性问题。本文以CentOS 7为例,详细记录MySQL 5.5.62源码编译与安装的全过程,涵盖环境准备、编译选项配置、安装部署及基础验证。

二、环境准备

1. 系统要求

MySQL 5.5对Linux内核版本要求较低,但需确保系统已安装基础开发工具链。推荐使用64位系统以获得最佳性能。

2. 依赖包安装

执行以下命令安装编译依赖:

yum install -y gcc gcc-c++ make cmake ncurses-devel bison openssl-devel

说明:

- gcc/gcc-c++:C/C++编译器

- cmake:构建系统生成工具(MySQL 5.5+使用CMake替代旧版configure)

- ncurses-devel:终端界面库

- bison:语法分析器生成器

- openssl-devel:SSL加密支持

3. 用户与目录创建

为安全起见,创建专用用户并设置数据目录:

groupadd mysql
useradd -r -g mysql -s /bin/false mysql
mkdir -p /usr/local/mysql/data
chown mysql:mysql /usr/local/mysql/data

三、源码获取与解压

1. 下载源码包

从MySQL官方仓库获取5.5.62版本(需确认MD5校验值):

wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.5.62.tar.gz
md5sum mysql-5.5.62.tar.gz  # 验证值应与官网一致

2. 解压与初始化

tar zxvf mysql-5.5.62.tar.gz
cd mysql-5.5.62

四、CMake配置编译选项

MySQL 5.5采用CMake构建系统,需通过CMakeLists.txt定义编译参数。关键选项如下:

cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DENABLE_DTRACE=0 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_SSL=system \
-DMYSQL_TCP_PORT=3306 \
-DWITH_DEBUG=0

参数说明:

- 安装路径:指定二进制文件、库的安装目录

- 数据目录:定义数据文件存储位置

- 存储引擎:启用InnoDB、MyISAM等核心引擎

- 字符集:设置为UTF-8以支持多语言

- 端口:默认3306,可修改为其他端口

五、编译与安装

1. 编译过程

配置完成后执行编译(建议使用-j参数并行编译):

make -j$(nproc)  # 根据CPU核心数自动并行

2. 安装二进制文件

make install

3. 验证安装结果

ls /usr/local/mysql/bin/  # 应包含mysqld、mysql等核心程序

六、初始化数据库

1. 复制配置文件模板

cp support-files/my-medium.cnf /etc/my.cnf

修改/etc/my.cnf关键配置:

[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
user=mysql
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

2. 初始化数据目录

执行以下命令创建系统表:

cd /usr/local/mysql
scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

3. 设置环境变量

echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile
source /etc/profile

七、启动与验证

1. 启动MySQL服务

cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
/etc/init.d/mysqld start

2. 验证服务状态

ps aux | grep mysqld
netstat -tulnp | grep 3306

3. 安全初始化

运行安全脚本设置root密码并移除匿名账户:

mysql_secure_installation

4. 基础测试

mysql -uroot -p
# 输入密码后执行
SHOW VARIABLES LIKE '%version%';
CREATE DATABASE testdb;
USE testdb;
CREATE TABLE test_table (id INT PRIMARY KEY, name VARCHAR(20));
INSERT INTO test_table VALUES (1, 'MySQL 5.5');
SELECT * FROM test_table;

八、常见问题解决

1. 编译错误处理

问题:cmake报错"Could NOT find Bison"

解决:安装bison开发包

yum install bison

2. 启动失败处理

问题:错误日志显示"Can't find error-message file"

解决:检查--basedir参数是否正确,或手动创建符号链接:

ln -s /usr/local/mysql/share/english /usr/local/mysql/share/errmsg

3. 权限问题

问题:数据目录权限不足

解决:确保/usr/local/mysql/data属主为mysql用户

chown -R mysql:mysql /usr/local/mysql/data

九、性能优化建议

1. 内存配置

在my.cnf中调整InnoDB缓冲池大小(建议为物理内存的50-70%):

innodb_buffer_pool_size=2G

2. 连接数优化

max_connections=200
thread_cache_size=32

3. 日志配置

slow_query_log=1
slow_query_log_file=/var/log/mysql-slow.log
long_query_time=2

十、总结

通过源码编译安装MySQL 5.5,开发者可获得对数据库系统的完全控制权,包括存储引擎选择、性能参数调优和安全配置定制。本文详细记录了从环境准备到基础验证的全流程,并提供了常见问题的解决方案。实际生产环境中,建议结合监控工具(如Percona Monitoring)持续优化数据库性能。

关键词:Linux、MySQL 5.5、源码编译、CMake、安装配置、存储引擎、性能优化、安全初始化

简介:本文详细记录Linux系统下MySQL 5.5数据库的源码编译安装过程,涵盖环境准备、CMake配置、编译安装、初始化设置及基础验证,并提供常见问题解决方案和性能优化建议。

《Linux下源码编译MySQL 5.5 与安装过程全记录.doc》
将本文以doc文档格式下载到电脑,方便收藏和打印
推荐度:
点击下载文档