源码部署mysql8.0.40

操作系统 MySQL版本
RHEL7.9 8.0.40

(1)安装编译mysql所需软件包

bash 复制代码
#安装mysql8的依赖软件
[root@master ~]# yum install  -y git bison openssl-devel ncurses-devel -y

#安装cmake3
[root@master ~]# cat  /etc/yum.repos.d/epel.repo
[epel]
name=epel
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
gpgcheck=0
[root@master ~]# yum install  cmake3 -y
#安装gcc11,找到相关的rpm包上传至linux后解压并安装
[root@master ~]# ls gcc-11.zip
gcc-11.zip
[root@master ~]# unzip gcc-11.zip
[root@master ~]# ll gcc-11
total 55984
-rw-r--r-- 1 root root  6607544 Jul 19 11:56 devtoolset-11-binutils-2.36.1-1.el7.2.x86_64.rpm
-rw-r--r-- 1 root root 33872612 Jul 19 11:56 devtoolset-11-gcc-11.2.1-9.el7.x86_64.rpm
-rw-r--r-- 1 root root 13074320 Jul 19 11:56 devtoolset-11-gcc-c++-11.2.1-9.el7.x86_64.rpm
-rw-r--r-- 1 root root  3739724 Jul 19 11:56 devtoolset-11-libstdc++-devel-11.2.1-9.el7.x86_64.rpm
-rw-r--r-- 1 root root    20580 Jul 19 11:56 devtoolset-11-runtime-11.1-2.el7.x86_64.rpm

[root@master ~]# cd  gcc-11/
[root@master gcc-11]# yum install ./*.rpm
 
[root@master ~]# source  /opt/rh/devtoolset-11/enable
[root@master gcc-11]# cat /opt/rh/devtoolset-11/enable  >> ~/.bash_profile
[root@master gcc-11]# gcc -v
gcc version 11.2.1 20220127 (Red Hat 11.2.1-9) (GCC)

(2)编译安装mysql8.0.40

上传mysql源码包至linux并解压

bash 复制代码
[root@master opt]# ls mysql-boost-8.0.40.tar.gz
mysql-boost-8.0.40.tar.gz
[root@master opt]# tar xf mysql-boost-8.0.40.tar.gz
[root@master opt]# cd  mysql-8.0.40/
[root@master mysql-8.0.40]# mkdir bld
[root@master mysql-8.0.40]# cd bld
[root@master bld]#  cmake3 .. \
-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 \										#指定MySQL使用系统已安装的 SSL 库
-DWITH_BOOST=bundled \									#指定使用 MySQL 源码包中内置的Boost库
[root@master  bld]# make  -j 2  ########该过程很久,请耐心等待,利用多核 CPU 资源同时运行 2 个编译进程
[root@master  bld]# make install
bash 复制代码
#生成启动脚本
[root@master ~]# cp  /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
#修改环境变量
[root@master ~]# vim /etc/profile
export PATH=$PATH:/usr/local/mysql/bin
[root@master ~]# source /etc/profile

#建立数据库程序运行用户
[root@master ~]# useradd -M -s /sbin/nologin mysql

#建立数据库数据目录
[root@master ~]# mkdir -p /data/mysql/
[root@master ~]# chown mysql.mysql -R /data/

#创建配置文件
[root@master ~]# cat /etc/my.cnf
[mysqld]
datadir=/data/mysql   #指定数据目录
socket=/data/mysql/mysql.sock   #指定套接字
server_id=200
log-bin=binlog
#数据库初始化建立mysql基本数据,注意在输出中查看临时密码
[root@master ~]# mysqld --initialize --user=mysql
#启动数据库
[root@master ~]# /etc/init.d/mysqld  start
Starting MySQL.Logging to '/data/mysql/master.err'.
. SUCCESS!

#修改数据库密码,新密码为123
[root@master ~]# mysqladmin -uroot -p password  '123'
#使用新密码登录数据库
[root@master ~]# mysql -uroot -p123
mysql>
相关推荐
TPCloud10 个月前
windows 11编译安装ffmpeg(包含ffplay)
windows·ffmpeg·源码安装·mysys
954L1 年前
Ubuntu22.04安装ffmpeg(v7.0)
linux·ubuntu·ffmpeg·安装ffmpeg·编译安装·源码安装