CentOS 7源码包编译安装MySQL数据库软件,具体步骤如下:
右键打开terminal,按照下述步骤进行操作。
1.下载源码包:
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-boost-5.7.27.tar.gz
CentOS系统中使用wget命令可以将后面的软件包下载当前目录中
2.安装MySQL数据库软件需要的依赖包
yum install -y cmake ncurses-devel bison gnutls-devel gcc-c++
CentOS系统可以使用yum命令进行软件包的安装,CentOS只要能连接互联网默认可以从互联网中下载软件包的更新,依赖包不同版本的系统和不同版本的源码包文件可能都会有所不同,寻找依赖软件包比较复杂,一般是在编译和安装的时候报错根据报错信息进行排错
3.解压源码包文件
tar xf mysql-boost-5.7.27.tar.gz -C /usr/src/
CentOS中使用tar命令可以解压压缩包,-C(大写C)是浏览解压目录,一般都会放置在/usr/src目录中(图示例在下步骤4图中)
4.配置MySQL数据库内容
cd /usr/src/mysql-5.7.27/
切换至解压目录中
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL-USER=mysql -DDOWNLOAD_BOOST=1 -DWITH_BOOST=./boost
CentOS 7配置MySQL使用cmake工具,可以定义安装目录以及数据文件以及各种功能组件位置
5.编译
make
编译过程和时间比较久,这一步骤基本要半小时左右,设置更久,请耐心等待,到安装100%时结束。这一步骤可以将源码包中文件和系统的内核等进行联系,结合源码包和系统。
6.安装
make install
安装过程将软件在系统中安装出来,会在定义的目录中释放相应的软件(数据库)文件,该步骤我忘记截图了,直接上输入指令然后回车就可以,会跳出如下内容。
7.创建数据库用户
useradd -s /sbin/nologin mysql
创建一个禁止系统中登录mysql用户,该用户用于管理当前主机中MySQL服务,不用于其他工作
chown -R :mysql /usr/local/mysql
修改MySQL安装目录所属组是mysql组,否则mysql用户没有权限访问MySQL安装目录(图示在步骤8中的图里)
8.初始化MySQL数据库(创建MySQL数据文件)
cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
初始化MySQL数据库,创建默认系统数据库,使用用户为mysql,MySQL安装目录为/usr/local/mysql 数据文件放置目录为/usr/local/mysql/data
命令提示的最后一行会显示MySQL数据库root管理员的初始密码,需要记住,最好粘贴出来
9.修改MySQL配置文件:
vim /etc/my.cnf
回车之后会进入配置文件,使用dd删除一行,清空该文件所有内容,使用i让左下角变为INSTERT或插入,粘贴下面内容
[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
symbolic-links=0
[mysqld_safe]
log-error=/usr/local/mysql/data/mysql.log
pid-file=/usr/local/mysql/data/mysql.pid
!includedir /etc/my.cnf.d
修改完成后,使用ESC键让左下角INSTERT消失,输入:wq保存并退出
10.启动MySQL服务
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
复制MySQL启动脚本
chkconfig --add mysqld 将mysql启动脚本添加至系统服务
chkconfig mysqld on 设置mysql服务开机自启动
service mysqld start 立刻开启mysql服务
11.修改系统变量
echo “PATH=/usr/local/mysql/bin:$PATH” >> /etc/profile
. /etc/profile
让用户可以在任何位置直接执行mysql数据库管理命令,否则需要使用完整路径
mysql -u root -p 连接本机mysql数据库,密码为初始化自动生成密码(也就是步骤8中画红线的位置,每个人不一样)
mysqladmin -u root -p password 123456 修改mysql的root密码为123456,需要输入旧密码,图中红色1的地方。改完密码之后会提示有风险,因为我改的是123456,太简单了,你可以改一个你容易记住的。之后再次登录mysql,直接在图中红色2的位置输入改过的密码就可以了。可以看到已经可以进入mysql了。
简单操作一下,输入show databases;发现已经可以使用了。安装完成。