1. 准备工作
在开始之前,我们需要准备一些必要的工作。
1.1 系统更新
首先,我们需要确保我们的系统是最新版本的CentOS 7。我们可以使用以下命令来更新系统:
sudo yum update -y
这将更新您的系统中的所有软件包。
1.2 安装必要的软件
接下来,我们需要安装一些必要的软件包,以便在编译和安装MySQL时使用。
sudo yum install -y gcc cmake ncurses-devel
gcc是GNU C编译器,cmake是一个跨平台的开源构建工具,ncurses-devel是一个用于创建字符用户界面的库。
2. 下载MySQL
接下来,我们需要从MySQL官方网站下载MySQL的源代码。
2.1 下载源代码
我们可以使用以下命令在CentOS 7上下载MySQL的源代码:
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.26.tar.gz
这将下载MySQL 8.0.26的源代码压缩包。
2.2 解压文件
下载完成后,我们需要解压下载的文件。可以使用以下命令解压文件:
tar xzf mysql-8.0.26.tar.gz
这将解压缩MySQL源代码到一个名为mysql-8.0.26
的目录中。
3. 编译和安装MySQL
在完成准备工作后,我们可以开始编译和安装MySQL。
3.1 创建编译目录
在开始编译前,我们需要创建一个目录来存储编译后的文件。可以使用以下命令创建目录:
mkdir mysql-8.0.26/build
cd mysql-8.0.26/build
这将在mysql-8.0.26
目录下创建一个名为build
的目录,并切换到该目录中。
3.2 配置MySQL
接下来,我们需要运行cmake
命令来配置MySQL的编译选项。可以使用以下命令进行配置:
cmake ..
..
表示上级目录,这将告诉cmake
在当前目录中查找CMakeLists.txt
文件来配置MySQL。
3.3 编译MySQL
配置完成后,我们可以使用以下命令开始编译MySQL:
make
这将开始编译MySQL的源代码。这个过程可能需要一些时间。
3.4 安装MySQL
编译完成后,我们可以使用以下命令安装MySQL:
sudo make install
这将安装MySQL到系统中。
4. 配置MySQL
在安装MySQL后,我们需要进行一些配置工作。
4.1 创建MySQL用户
首先,我们需要创建一个用于运行MySQL的系统用户。可以使用以下命令创建用户:
sudo useradd mysql
sudo groupadd mysql
sudo usermod -a -G mysql mysql
这将创建一个名为mysql
的系统用户,以及一个名为mysql
的用户组,并将mysql
用户添加到mysql
用户组中。
4.2 设置MySQL数据文件夹
接下来,我们需要创建一个用于存储MySQL数据的文件夹。可以使用以下命令创建文件夹:
sudo mkdir /var/lib/mysql
sudo chown -R mysql:mysql /var/lib/mysql
这将创建一个名为/var/lib/mysql
的文件夹,并将其所有权设置为mysql
用户。
4.3 初始化MySQL
在配置MySQL之前,我们需要初始化MySQL数据目录。可以使用以下命令初始化MySQL:
sudo ./bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/var/lib/mysql
这将在/var/lib/mysql
目录中初始化MySQL数据目录。
5. 启动MySQL
在完成配置后,我们可以启动MySQL服务。
5.1 启动MySQL服务
可以使用以下命令启动MySQL服务:
sudo ./bin/mysqld_safe --user=mysql &
这将以mysql
用户的身份在后台启动MySQL服务。
5.2 设置MySQL自启动
为了使MySQL在系统启动时自动启动,我们需要创建一个启动脚本。可以使用以下命令创建启动脚本:
sudo cp support-files/mysql.server /etc/init.d/mysql.server
sudo chmod +x /etc/init.d/mysql.server
这将复制mysql.server
文件到/etc/init.d
目录下,并将其权限设置为可执行。
5.3 启动MySQL自启动
启动脚本创建完成后,我们可以使用以下命令设置MySQL在系统启动时自动启动:
sudo chkconfig --add mysql.server
sudo chkconfig mysql.server on
这将将MySQL启动脚本添加到系统的启动服务列表中,并将其设置为开机自启动。
6. 登录MySQL
现在,我们可以登录MySQL并开始使用了。
6.1 进入MySQL命令行
可以使用以下命令进入MySQL命令行:
./bin/mysql -u root
这将使用root
用户登录MySQL。
6.2 修改MySQL密码
在登录MySQL后,我们可以使用以下命令修改root
用户的密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_new_password';
将your_new_password
替换为您选择的新密码。
7. 结论
恭喜!您已经成功在CentOS 7上编译和安装了MySQL。
在本教程中,我们涵盖了从准备工作到编译和安装MySQL的整个过程。我们还讨论了一些重要的配置步骤,如创建MySQL用户、设置MySQL数据文件夹和初始化MySQL。
现在,您可以通过启动MySQL服务并登录MySQL来开始使用MySQL数据库。