安装系统:CentOS 7.9 64位
1. 安装gcc
yum list gcc-c++ | grep gcc-c++
yum -y install gcc-c++
2. 安装cmake
cmake是一个跨平台的、开源的构建工具。是makefile的上层工具,它们的目的正是为了产生可移植的makefile,并简化自己动手写makefile时的巨大工作量.
yum -y install cmake
检查是否安装成功
yum list installed | grep cmake
源码包安装
cd /mnt/software/cmake-3.23.0
./bootstrap
make && make install
3. 安装opensll
yum -y install make openssl openssl-devel
4. 安装ncurses
ncurses是字符终端下屏幕控制的基本库
yum -y install ncurses ncurses-devel
5. 安装libtirpc
libtirpc包包含支持使用远程过程调用(RPC)API的程序的库
yum -y install libtirpc libtirpc-devel
6. 安装rpcsvc
rpcsvc-proto提供了远程过程调用(Remote Procedure Call,缩写为 RPC)协议的定义,确保不同系统之间的通信能够正确进行。它包含了必要的协议规范和数据结构,使得不同系统间的交互更加标准和可靠
cd rpcsvc-proto-1.4.2/
./configure
make && make install
7. 安装libevent
libevent是一个用C语言编写的、轻量级的开源高性能事件通知库.
yum -y install libevent libevent-devel
8. boots包
boost库是一个C++的开源库,提供了许多高质量的、可重用的组件,包括容器、算法、函数对象、迭代器、数值计算、并发编程等等。使用Boost库可以大大提高C++程序的开发效率和质量。
将包解压到:/mnt/software目录里
安装Mysql服务
1. 创建下面两个目录
/usr/local/mysql-5.7.38
/usr/local/mysql-5.7.38/tmp
2. 修改 CMakeLists.txt
注释掉:#INCLUDE(cmake/abi_check.cmake)
3. cmake编译
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.7.38 \
-DMYSQL_DATADIR=/usr/local/mysql-5.7.38/data \
-DMYSQL_UNIX_ADDR=/usr/local/mysql-5.7.38/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_ZLIB=bundled \
-DWITH_SSL=system \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0 \
-DWITH_BOOST=/mnt/software
4. 编译&安装
make & make install
配置Mysql服务
1. 修改Mysql配置文件
vim /etc/my.cnf
修改以下内容
datadir=/usr/local/mysql-5.7.38/data
socket=/usr/local/mysql-5.7.38/tmp/mysql.sock
[mysqld]
character-set-server=utf8mb4
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
2. 修改系统全局变量
vim /etc/profile
添加一下内容
export PATH=$PATH:/usr/local/mysql-5.7.38/bin
使配置生效
source /etc/profile
启动Mysql服务
1. 初始化并获取初始化密码
cd /usr/local/mysql-5.7.38/bin
sudo ./mysqld --initialize --datadir=/usr/local/mysql-5.7.38/data/ &
2. 如果没有获取初始化密码,则使用跳过验证启动
./mysqld --console --skip-grant-tables --user=root
3. 正常启动
sudo ./mysqld --defaults-file=/etc/my.cnf --user=root &
4. 已守护线程方式启动
./mysqld_safe --defaults-file=/etc/my.cnf --user=root &
5. 使用初始化密码登陆
使用初始化密码登陆操作时会报错:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
需要修改初始化密码,修改后Mysql可以正常使用
ALTER USER user() IDENTIFIED BY '你的密码';