centos7二进制部署mysql8.0

二进制部署mysql



前言

mysql是当今最流行的关系型数据库管理系统之一,二进制存储方式是在mysql中使用的一种普遍存储方式,采用二进制存储方式的优势已被证明在mysql数据库中有着重要的作用。

一、环境准备

1.卸载其他版本mysql

卸载已经有的mysql包

for i in `rpm -qa|grep mysql`;do rpm -e $i --nodeps;done

删除数据目录和配置文件

rm -rf /var/lib/mysql && rm -rf /etc/my.cnf  

2.卸载mariadb

for i in `rpm -qa|grep mariadb`;do rpm -e $i --nodeps;done

3.安装所需要的依赖包

yum -y install libaio
yum -y install net-tools

4.下载数据包

https://downloads.mysql.com/archives/community/
找到所需要的mysql版本下载
在这里插入图片描述通过rz上传,若未找到命令说明需要安装 lrzsz

yum -y install lrzsz

二、安装步骤

1、解压

将上传的安装包并解压到/usr/local/mysql下

tar -xvf mysql-8.0.25-linux-glibc2.12-x86_64.tar.xz -C /usr/local/

改名字

 mv mysql-8.0.25-linux-glibc2.12-x86_64/ mysql

2、新建mysql用户组和mysql用户并授权

groupadd mysql
useradd -g mysql mysql
chown -R mysql.mysql /usr/local/mysql

3、新建mysql数据目录并授权

mkdir -p /data/mysql/{data,log,binlog,conf,tmp}
chown -R mysql.mysql /data/mysql

4、初始化并启动mysql

切换mysql用户

su - mysql

配置mysql配置文件

vi /data/mysql/conf/my.cnf

内容如下

[mysqld]
lower_case_table_names          = 1
user                            = mysql
server_id                       = 1
port                            = 3306
 
default-time-zone = '+08:00'
enforce_gtid_consistency        = ON
gtid_mode                       = ON
binlog_checksum                 = none
default_authentication_plugin   = mysql_native_password
datadir                         = /data/mysql/data
pid-file                        = /data/mysql/tmp/mysqld.pid
socket                          = /data/mysql/tmp/mysqld.sock
tmpdir                          = /data/mysql/tmp/
skip-name-resolve               = ON
open_files_limit                = 65535
table_open_cache                = 2000
 
#################innodb########################
innodb_data_home_dir            = /data/mysql/data
innodb_data_file_path           = ibdata1:512M;ibdata2:512M:autoextend
innodb_buffer_pool_size = 512M
innodb_flush_log_at_trx_commit = 1
innodb_io_capacity = 600
innodb_lock_wait_timeout = 120
innodb_log_buffer_size = 8M
innodb_log_file_size = 200M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 85
innodb_read_io_threads = 8
innodb_write_io_threads = 8
innodb_thread_concurrency = 32
innodb_file_per_table
innodb_rollback_on_timeout
 
innodb_undo_directory           = /data/mysql/data
innodb_log_group_home_dir       = /data/mysql/data
 
###################session###########################
join_buffer_size = 8M
key_buffer_size = 256M
bulk_insert_buffer_size = 8M
max_heap_table_size = 96M
tmp_table_size = 96M
read_buffer_size = 8M
sort_buffer_size = 2M
max_allowed_packet = 64M
read_rnd_buffer_size = 32M
 
############log set###################
log-error                       = /data/mysql/log/mysqld.err
log-bin                         = /data/mysql/binlog/binlog
log_bin_index                   = /data/mysql/binlog/binlog.index
max_binlog_size                 = 500M
slow_query_log_file             = /data/mysql/log/slow.log
slow_query_log                  = 1
long_query_time                 = 10
log_queries_not_using_indexes   = ON
log_throttle_queries_not_using_indexes  = 10
log_slow_admin_statements       = ON
log_output                      = FILE,TABLE
master_info_file                = /data/mysql/binlog/master.info

执行初始化命令

/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/conf/my.cnf  --initialize-insecure  --user=mysql

(查看日志文件,解决error,没有问题时启动mysql)

tail -50f /data/mysql/log/mysqld.err

启动mysql

/usr/local/mysql/bin/mysqld_safe --defaults-file=/data/mysql/conf/my.cnf &

检查端口是否起来

ss -ntl|grep 3306

5、登录MySQL并修改密码

eixt 结束mysql用户,使用root用户,登录mysql

/usr/local/mysql/bin/mysql -S /data/mysql/tmp/mysqld.sock -p

第一次登录密码敲回车,首次使用sock文件登录mysql是不需要密码的。
修改密码:

alter user 'root'@'localhost' identified by '自己需要修改的密码';

刷新权限

flush privileges;

退出,用新密码重新登录mysql

/usr/local/mysql/bin/mysql -S /data/mysql/tmp/mysqld.sock -p

输入新密码登录mysql

总结

想要在一台机器上部署两台版本不一样的mysql只需要改变端口,通过创建不同的目录来支持不同的mysql实例。

  • 27
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值