1,安装依赖

yum -y install ncurses ncurses-devel libaio-devel gmp gmp-devel mpfr mpfr-devel libmpcdec zlib-devel net-tools cmake openssl openssl-devel gcc-c++ rpcgen

2,下载压缩包并解压,进入解压目录

#创建mysql存储数据的目录
mkdir /data

#下载源码包
cd /usr/local/src
wget -c http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-boost-5.7.28.tar.gz
tar -zxvf mysql-boost-5.7.28.tar.gz
cd mysql-5.7.28

3,预编译

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data \
-DSYSCONFDIR=/etc \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DENABLE_DTRACE=0 \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_general_ci \
-DWITH_EMBEDDED_SERVER=1 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=./boost/boost_1_59_0

4,编译安装

make -j8
make install
#配置环境变量
export PATH=/usr/local/mysql/bin:$PATH

5,配置mysql的配置文件

#新建配置文件my.cnf
vi /etc/my.cnf

#将以下内容写入配置文件
[mysqld]
datadir=/data
socket=/var/lib/mysql/mysql.sock

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

#修改权限
chmod 644 /etc/my.cnf

6,创建相关文件以及修改权限

#创建mysql用户及用户组
groupadd mysql
useradd -g mysql mysql

mkdir /var/lib/mysql
mkdir /var/run/mysqld

touch /var/log/mysqld.log
touch /var/lib/mysql/mysql.sock
touch /var/run/mysqld/mysqld.pid

chown mysql:mysql /var/log/mysqld.log
chown -R mysql:mysql /var/lib/mysql
chown -R mysql:mysql /var/run/mysqld

7,初始化数据库

#初始化数据库
mysqld --initialize --user=mysql

#生成的文件都在/data目录下

8,加入服务

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

#启动服务
service mysqld start

9,登录

#初始密码在/var/log/mysqld.log里边可以查找到,有一行类似“ A temporary password is generated for root@localhost: xxxxx”的就是

#登录
mysql -uroot -h127.0.0.1 -p

以上参考了官方论坛的:【openEuler】UOS_Euler版源码安装Mysql5.7

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐