centos 系统下,安装mysql,可以很方便的使用yum,rpm安装方式进行安装,但为了确保数据库的功能的完整性、可定性,很多在生产应该上,都采用编译安装的方式进行安装mysql数据库。
本文,小编将采用图文方式,给大家讲解整个编译安装过程。
系统及软件:
CentOS-7-x86_64,采用最小化系统安装,系统安装教程在这里省略
mysql-boost-5.7.28.tar.gz 可通过,我共享的地址进行下载,或到官网进行下载都可以。
共享文件地址: 提取码:oma9
系统环境准备:
通过如下命令,查询安装操作系统时自带安装的mariadb,并进行删除
rpm -qa | grep mariadb
//删除
yum remove mariadb-libs-5.5.64-1.el7.x86_64
安装必要的软件依赖
yum install -y cmake make gcc gcc-c++ ncurses-devel openssl-devel
添加用户
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
创建安装目录、数据目录及权限设置
mkdir /opt/mysql
mkdir -p /u01/mysql/data
chown -R mysql:mysql /opt/mysql
chown -R mysql:mysql /u01
解压缩安装包
tar xzvf mysql-boost-5.7.28.tar.gz
编译安装
使用cmake进行生成编译环境
cd mysql-5.7.28
cmake \
-DCMAKE_INSTALL_PREFIX=/opt/mysql \
-DMYSQL_DATADIR=/u01/mysql/data \
-DMYSQL_UNIX_ADDR=/opt/mysql/mysql.sock \
-DMYSQL_USER=mysql \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_BOOST=/root/mysql-5.7.28/boost/boost_1_59_0 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
编译,运行如下命令,并等待编译完成
make
编译完成后,使用如下的命令,进行安装
make install
添加系统服务
cp /opt/mysql/support-files/mysql.server /etc/init.d/mysqld
cd /etc/init.d
chmod +x mysqld
chkconfig --add mysqld
配置环境变量
vi /etc/profile
在文件的末尾加入变量配置,并保存退出
export mypath=/opt/mysql
export PATH=$PATH:$mypath/bin
使配置生效
source /etc/profile
初始化数据库
mysqld --initialize --user=mysql --basedir=/opt/mysql --datadir=/u01/mysql/data
启动mysql服务并查看状态
systemctl start mysqld
systemctl status mysqld
连接到mysql数据库
mysql -u root -p"
htfet(Ke_0#f
"
//红色部分为生成的密码
初次使用,修改密码,不然会报如下的错误
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
修改密码
set password=password('musen123');
flush privileges;

退出验证密码是否修改成功

至此,mysql 5.7.28 编译安装到此结束。
