作为一名Linux系统管理员,MySQL是我们必须掌握的一项技能。在CentOS安装MySQL时,我们通常会使用yum命令进行安装。有时候我们需要安装MySQL的某个特定版本,这时候就需要使用tar包进行安装。本文将介绍在CentOS上使用tar包安装MySQL的详细步骤。
我们需要下载MySQL的tar包。可以在MySQL官网上下载最新版本的MySQL tar包,也可以在第三方网站上下载。在下载时,我们需要注意选择与我们的CentOS系统版本和位数相对应的MySQL tar包。下载完成后,我们需要将MySQL tar包上传到CentOS系统中。
在安装MySQL之前,我们需要先安装一些依赖包。在CentOS上安装MySQL所需的依赖包有:gcc、gcc-c++、ncurses-devel、cmake、bison-devel、openssl-devel、libevent-devel、numactl-devel。可以使用以下命令安装这些依赖包:
```
yum install -y gcc gcc-c++ ncurses-devel cmake bison-devel openssl-devel libevent-devel numactl-devel
我们需要将MySQL tar包解压到一个目录中。可以选择在/usr/local/目录下创建一个mysql目录,然后将MySQL tar包解压到该目录中。解压命令如下:
mkdir /usr/local/mysql
tar -zxvf mysql-5.7.31.tar.gz -C /usr/local/mysql --strip-components=1
注:mysql-5.7.31.tar.gz为MySQL tar包的文件名,根据实际情况进行替换。
在解压MySQL tar包后,我们需要配置MySQL。可以使用以下命令进行配置:
cd /usr/local/mysql
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
-DCMAKE_INSTALL_PREFIX指定MySQL的安装路径,-DMYSQL_DATADIR指定MySQL的数据文件存放路径,-DSYSCONFDIR指定MySQL的配置文件存放路径,-DWITH_MYISAM_STORAGE_ENGINE、-DWITH_INNOBASE_STORAGE_ENGINE、-DWITH_MEMORY_STORAGE_ENGINE指定MySQL支持的存储引擎,-DWITH_READLINE指定MySQL支持readline库,-DENABLED_LOCAL_INFILE指定MySQL支持本地文件导入,-DWITH_PARTITION_STORAGE_ENGINE指定MySQL支持分区存储引擎,-DEXTRA_CHARSETS指定MySQL支持的字符集,-DDEFAULT_CHARSET和-DDEFAULT_COLLATION指定MySQL的默认字符集和排序规则。
配置MySQL完成后,我们需要使用make命令进行编译。编译命令如下:
make
编译完成后,我们需要使用make install命令进行安装。安装命令如下:
make install
MySQL安装完成后,我们需要使用以下命令进行初始化:
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
该命令会生成一个随机密码,该密码会存放在日志文件中,我们需要使用以下命令获取该密码:
grep 'temporary password' /usr/local/mysql/data/error.log
我们需要使用以下命令修改root用户密码:
bin/mysql_secure_installation
MySQL初始化完成后,我们可以使用以下命令启动MySQL:
bin/mysqld_safe --user=mysql &