linux安装mysql
1.mysql下载
①进入mysql官方网站:https://www.mysql.com/ 点击进入DOWNLOADS下载页面
②进入下载页面后,找到mysql社区版本MySQL Community (GPL) Downloads点击进入
③进入社区版页面后,进行如下点击
④进入后,点击mysql版本归档页面
⑤进入mysql版本归档页面后选择你所需要的mysql版本、操作系统及系统版本,然后点击download即可下载
2.mysql安装规范
MySQL安装方式:推荐使用二进制安装(其他安装方式:源码编译安装、yum、rpm)
MySQL运行用户:mysql:mysql注意该用户是虚拟用户,只是用于mysql进程运行使用,不允许登录、不创建家目录
MySQL目录规范:
下载目录/server/tools
系统目录/opt/mysql/mysql-xx.xx
软连接ln-s/opt/mysql/mysql-xx.xx /usr/local/mysql
数据目录/data/mysql/mysql+port/{data,logs}
配置文件/data/mysql/mysql+port/my+port.cnf
3.二进制安装MySQL5.7.26(该安装方式使用于MySQL5.7和MySQL8.0的各个小版本)
。创建MySQL虚拟用户
useradd -s /sbin/nologin -M mysql #创建用户命令
id mysql #查看是否创建成功
。创建目录
mkdir -p /server/tools
mkdir -p /opt/mysql
mkdir -p /data/mysql/mysql3306/{data,logs}
cd /server/tools #进入到该目录
。将下载的文件上传
rz
yum install -y lrzsz #如没有rz命令,可通过yum安装
。解压二进制包
tar xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
。将软件部分移动到指定目录
mv mysql-5.7.26-linux-glibc2.12-x86_64 /opt/mysql/mysql-5.7.26
。创建软连接
ln -s /opt/mysql/mysql-5.7.26/ /usr/local/mysql
。删除mariadb(避免与MySQL冲突)
rpm -e --nodeps mariadb-libs
。配置文件整理(该配置参数只用于测试环境,不可在生产中使用。配置参数影响着MySQL数据库的性能及安全,慎重!!!)
vim /data/mysql/mysql3306/my3306.cnf
[mysqld]
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql/mysql3306/data
socket = /data/mysql/mysql3306/mysql.sock
server_id = 1
port = 3306
log_error=/data/mysql/mysql3306/logs/error.log
log_bin=/data/mysql/mysql3306/logs/mysql-bin
binlog_format=row
gtid_mode=on
enforce_gtid_consistency=true
log_slave_updates=1
max_connections=1024
wait_timeout=60
sort_buffer_size=2M
max_allowed_packet=32M
join_buffer_size=2M
innodb_buffer_pool_size=128M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=32M
innodb_log_file_size=128M
innodb_log_files_in_group=2
binlog_cache_size=2M
max_binlog_cache_size=8M
max_binlog_size=512M
expire_logs_days=7
slow_query_log=on
slow_query_log_file=/data/mysql/mysql3306/logs/slow.log
long_query_time=0.5
log_queries_not_using_indexes=1
。安装MySQL依赖包
yum install libaio-devel -y
yum install numactl -y
。更改MySQL相关目录的用户组
chown -R mysql:mysql /data/*
。初始化数据库
/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/mysql3306/data
(MySQL8.0 、MySQL5.7都是通过mysqld进行初始化数据)
。加入环境变量
vim /etc/profile
export PATH="/usr/local/mysql/bin:$PATH"
source /etc/profile
。启动MySQL
mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf &
。查看是否启动成功
netstat -lntup |grep mysql
。连接mysql
mysql -S /data/mysql/mysql3306/mysql.sock