(本机环境centos 7 空白机器)不是空白机器的看最后清理mysql安装环境
准备
关闭防火墙和SElinux
简单:
关闭防火墙
systemctl stop firewalld
关闭SElinux
setenforce 0
添加阿里云yum源(非必要)
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
安装阿里云yum扩展源(非必要)
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
安装wgt
yum -y install wget
安装编译工具
yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make glibc automake autoconf cmake
开始
1.创建mysql用户
useradd -r mysql -M -s /bin/false
2.从官网下载tar包
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.27.tar.gz
创建mysql目录
mkdir -p /usr/local/mysql/{data,log}
解压
tar xzvf mysql-boost-5.7.27.tar.gz -C /usr/local/
编译安装
cd /usr/local/mysql-5.7.27/
-DDOWNLOAD_BOOST=1/ 参数详解:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ 安装目录
-DSYSCONFDIR=/etc \ 配置文件存放 (默认可以不安装配置文件)
-DMYSQL_DATADIR=/usr/local/mysql/data \ 数据目录 错误日志文件也会在这个目录
-DINSTALL_MANDIR=/usr/share/man \ 帮助文档
-DMYSQL_TCP_PORT=3306 \ 默认端口
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ sock文件位置,用来做网络通信的,客户端连接服务器的时候用
-DDEFAULT_CHARSET=utf8 \ 默认字符集。字符集的支持,可以调
-DEXTRA_CHARSETS=all \ 扩展的字符集支持所有的
-DDEFAULT_COLLATION=utf8_general_ci \ 支持的
-DWITH_READLINE=1 \ 上下翻历史命令
-DWITH_SSL=system \ 使用私钥和证书登陆(公钥) 可以加密。 适用与长连接。坏处:速度慢
-DWITH_EMBEDDED_SERVER=1 \ 嵌入式数据库
-DENABLED_LOCAL_INFILE=1 \ 从本地倒入数据,不是备份和恢复。
-DWITH_INNOBASE_STORAGE_ENGINE=1 默认的存储引擎,支持外键
make
如果安装出错,想重新安装:
不用重新解压,只需要删除安装目录中的缓存文件CMakeCache.txt
make install
初始化
cd /usr/local/mysql
chown -R mysql.mysql .
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data —初始化完成之后,一定要记住提示最后的密码用于登陆或者修改密码
egug4MkTp+5)
修改配置文件
mv /etc/my.cnf /etc/my.cnf.bak
vim /etc/my.cnf
[client]
port = 3306
socket = /tmp/mysql.sock
default-character-set = utf8
[mysqld]
port = 3306
user = mysql
basedir = /usr/local/mysql #指定安装目录
datadir = /usr/local/mysql/data #指定数据存放目录
socket = /tmp/mysql.sock
character_set_server = utf8
参数详解:
[client]
默认连接端口
port = 3306
用于本地连接的socket套接字
socket = /tmp/mysql.sock
编码
default-character-set = utf8[mysqld] 服务端口号,默认3306 port = 3306 mysql启动用户 user = mysql mysql安装根目录
basedir = /usr/local/mysql mysql数据文件所在位置 datadir =
/usr/local/mysql/data 为MySQL客户端程序和服务器之间的本地通讯指定一个套接字文件 socket =
/tmp/mysql.sock
#数据库默认字符集,主流字符集支持一些特殊表情符号(特殊表情符占用4个字节) character_set_server = utf8
启动mysql
/usr/local/mysql/bin/mysqld_safe --user=mysql &
登录mysql
/usr/local/mysql/bin/mysql -uroot -p’ egug4MkTp+5)’
.
\q退出
cp support-files/mysql.server /etc/init.d/mysqld
ls -l /etc/init.d/mysqld
新加载系统服务,将MySQL数据库加入开机自启动
systemctl daemon-reloadchkconfig mysqld on
修改密码
/usr/local/mysql/bin/mysqladmin -uroot -p’egug4MkTp+5)’ password ‘你的密码’
/usr/local/mysql/bin/mysql -uroot -p你的密码
清理mysql安装环境
yum erase mariadb mariadb-server mariadb-libs mariadb-devel -y
userdel -r mysql
rm -rf /etc/my*
rm -rf /var/lib/mysql
上面两条通用,最后两条是根据本文安装也需要执行的。