手动编译安装MySQL
准备环境
首先,确保您的系统安装了编译MySQL所需的依赖项,如GCC、make等,以及MySQL编译过程中可能需要的库文件。
对于Debian/Ubuntu系统,您可以使用以下命令安装这些依赖:
bash
sudo apt-get update
sudo apt-get install build-essential cmake libncurses5-dev libssl-dev
对于RedHat/CentOS系统,使用:
bash
sudo yum groupinstall "Development Tools"
sudo yum install cmake ncurses-devel openssl-devel
下载MySQL源代码
从MySQL官方网站或GitHub仓库下载您希望安装的MySQL版本的源代码。以MySQL 8.0为例,您可以访问MySQL官方网站下载页面或使用wget
命令下载:
bash
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.29.tar.gz
解压源代码包
bash
tar -zxvf mysql-8.0.29.tar.gz
cd mysql-8.0.29
编译和安装
- 创建一个目录用于MySQL的编译输出:
bash
mkdir build
cd build
- 运行
cmake
来配置MySQL编译选项:
bash
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1
这条命令指定了一些常用的编译选项,如安装路径、字符集、启用的存储引擎等。您可以根据需要调整这些选项。
- 编译MySQL:
bash
make
- 安装MySQL:
bash
sudo make install
配置MySQL
- 添加MySQL用户:
bash
sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql
- 将安装目录的所有者改为MySQL用户:
bash
sudo chown -R mysql:mysql /usr/local/mysql
- 初始化数据库:
bash
cd /usr/local/mysql
sudo bin/mysqld --initialize --user=mysql
- 复制配置文件和启动脚本:
bash
sudo cp support-files/my-default.cnf /etc/my.cnf
sudo cp support-files/mysql.server /etc/init.d/mysql
- 启动MySQL服务器:
bash
sudo service mysql start
- 设置环境变量(可选):
将MySQL目录添加到您的PATH环境变量中,以方便运行MySQL命令:
bash
echo 'export PATH=/usr/local/mysql/bin:$PATH' >> ~/.bash_profile
source ~/.bash_profile
完成
至此,您已经完成了MySQL的手动编译安装过程。接下来,您可以使用mysql_secure_installation
脚本来进一步配置MySQL的安全选项,包括设置root密码、删除匿名用户等。