1.安装MySQL所需要的软件包
cd /opt
https://downloads.mysql.com/archives/community/ #下载mysql-boost-8.0.40.tar.gz源码编译包,并上传
tar -xvf mysql-boost-8.0.40.tar.gz
yum install git bison openssl-devel ncurses-devel cmake3 gcc gcc-c++ -y
2.编译安装mysql8.0.40
cd /opt/mysql-8.0.40
mkdir bld
cd bld
cmake .. \ #cmake用于配置 MySQL 源码的编译环境
-DCMAKE_C_COMPILER=/usr/bin/gcc\ #显式指定c语言编译器为/usr/bin/gcc(系统中的 GCC 编译器)。
-DCMAKE_CXX_COMPILER=/usr/bin/g++\
-DWITH_BOOST=../boost/boost_1_77_0/ \ #指定MySQL 源码编译所依赖的 Boost 库的路径
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #指定安装路径
-DMYSQL_DATADIR=/data/mysql \ #指定数据目录
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \ #指定套接字文件
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ #指定启用INNODB存储引擎,默认用myisam
-DWITH_EXTRA_CHARSETS=all \ #扩展字符集
-DDEFAULT_CHARSET=utf8mb4 \ #指定默认字符集
-DDEFAULT_COLLATION=utf8mb4_unicode_ci \ #指定默认校验字符序
-DWITH_SSL=system \
yum install libtirpc rpcgen -y #MySQL 编译依赖的 RPC 开发组件
wget https://mirrors.tuna.tsinghua.edu.cn/centos-stream/9-stream/CRB/x86_64/os/Packages/libtirpc-devel-1.3.3-2.el9.x86_64.rpm #libtirpc-devel 开发包
rpm -ivh libtirpc-devel-1.3.3-2.el9.x86_64.rpm
make -j 4 #该过程很久,请耐心等待,利用多核 CPU 资源同时运行 4 个编译进程
make install
mkdir /etc/init.d
touch mysqld
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
echo "export PATH=$PATH:/usr/local/mysql/bin" >> ~/.bash_profile
source ~/.bash_profile
useradd -M -s /sbin/nologin mysql
mkdir /data/mysql/
chown mysql:mysql /data/mysql/
vim /etc/my.cnf
[mysqld]
datadir=/data/mysql #指定数据目录
socket=/data/mysql/mysql.sock #指定套接字
server_id=133
log-bin=binlog
mysqld --initialize --user=mysql #数据库初始化建立mysql基本数据,注意在输出中查看临时密码/etc/init.d/mysqld start
mysqladmin -uroot -p password '123'
Enter password: 输入临时密码
mysql -uroot -p123