centos7.2编译安装mysql5.5.32

萝らか妹 提交于 2020-08-13 18:34:18

红帽7以上系统默认数据库不再是mysql了,rpm和yum方式安装的都是mariadb,但也不是不能装mysql,可以使用编译安装的方式来装mysql。


实验环境:centos7.2

实验目标:安装并配置mysql5.5.32


新增分区


先通过fdisk创建一个新分区,配额,用来存放mysql的数据:

wKiom1jlEq-D4RpnAACCURwJ3hg295.png

刷新硬盘信息:

#partprobe devices

wKioL1jlFKbgB15iAACVBKwNJys809.png


格式化新增分区:

# mkfs.xfs /dev/vdb3

wKiom1jlF56QMDpgAAA-eB1pocc399.png


根目录创建mysql数据挂载点(根据实际情况)

# mkdir /data


编辑/etc/fstab,新增一行设置开机自动挂(参数根据实际情况):

/dev/vdb3  /data     xfs     defaults    0 0


执行mount -av,根据fstab文档自动挂载:

# mount -av

wKiom1jlGBmhLr-YAABSE-Hz9Ic151.png



安装mysql

开始安装之前,先把mysql用户删除掉,否则是编译不成功的。注意使用 -r 全部清空。

# userdel -r mysql
# grep mysql /etc/passwd


创建一个mysql用户,设置成8001

# useradd -u 8001 -s /sbin/nologin mysql


安装依赖以及必要工具:

yum –y install ncurses-devel
yum –y install cmake
yum –y install gcc-c++开始


解压mysql:

# tar xvf mysql-5.5.32.tar.gz


使用cmake开始编译:

# 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=/data -DMYSQL_USER=mysql


查看编译状态,输出0代表成功了:

# echo $?

wKioL1jmCZLwHZySAAA8N_JnPDQ766.png


执行安装:

# make && make install

wKiom1jmEn-RHBNmAACC5ozpKVU266.png


给mysql安装目录、数据存放目录授权mysql用户

chown -R mysql:mysql /usr/local/mysql/
chown -R mysql:mysql /data
chmod 1777 /tmp


查看/etc下的my.cnf文件,可以发现该文件没有配置的,把刚编译好的文件夹中的配置文件覆盖掉系统目录的配置文件

wKioL1jmFEqgQ-lNAABUDg_O5hc195.png



创建配置:

# cp support-files/my-large.cnf /etc/my.cnf

wKiom1jmGXfzo8CQAAARn4fcrxg179.png


设置环境变量:

# echo 'export PATH=/usr/local/mysql/bin:$PATH' >>/etc/profile
# source /etc/profile


设置服务脚本,设置开机自动启动:

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


给脚本添加执行权限:

# chmod +x /etc/init.d/mysqld


服务脚本修改2个参数(MySQL安装目录,数据存放目录# vim /etc/init.d/mysqld):

basedir=/usr/local/mysql
datadir=/data


初始化数据库:

给文件执行权限:

# chmod +x scripts/mysql_install_db

初始化数据库,看到2个ok代表执行成功:

# /usr/local/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data --user=mysql

wKiom1jmINqyyJQXAAByakyDfpQ384.png


初始化安全配置:

启动mysql服务:

# service mysqld start

wKioL1jmJQzw1SzLAAAP7X-PPG0611.png


直接执行:

# 
mysql_secure_installation


回车:

wKiom1jmJQywRTpvAAA04hF79Oc233.png


Y:设置密码

wKioL1jmJW_xVUcMAAAZSLSSCNo992.png

wKiom1jmJlfS1pgmAAAHE85IlYY493.png

wKioL1jmJlfDjbSIAAAH0Kq7XcQ132.png

wKiom1jmJlfyg1zEAAAPwLn_9UA529.png

wKioL1jmJleQj3GqAAAirWEqoaw302.png

登录mysql测试:

# mysql -u root -p

wKiom1jmJ5jwqg8_AAA-n5dIw6U199.png


添加全局命令:

# ln -s /usr/local/mysql/bin/mysql /bin/


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!