一、准备工作

1.1、目录规划

(1)/mysql 使用单独的逻辑卷。

mkdir /mysql

lvcreate -n lv_mysql -L +100g vg

mkfs.ext4 /dev/mapper/vg-lv_mysql

echo "/dev/mapper/vg-lv_mysql   /mysql                    ext4    defaults        0 0" >>/etc/fstab

mount -a

(2)按照数据库服务端口创建相应目录。

/mysql/3306/

mkdir -p /mysql/3306/

mkdir -p /mysql/3306/data/

mkdir -p /mysql/3306/binlog/

mkdir -p /mysql/3306/log/

mkdir -p /mysql/3306/tmp/

mkdir -p /mysql/3306/undolog/

/mysql/3306/data/

/mysql/3306/binlog/

/mysql/3306/log/

/mysql/3306/tmp/

/mysql/3306/undolog/

1.2、软件包准备

(1)准备并上传rpm安装包,使用5.7.19版本。

mysql-5.7.19-1.el6.x86_64.rpm-bundle.tar

二、安装过程

2.1、操作系统中存在的旧版本卸载

(1) 检查系统中是否存在旧版本的数据库

rpm -qa |grep -i mysql

(2) 卸载旧版本数据库

rpm -qa|grep -i mysql|xargs rpm -e --nodeps

rm -rf /usr/lib64/mysql/

userdel mysql

groupdel mysql

2.2、安装mysql 5.7.19

(1) 依赖RPM包查看

rpm -qa | grep -i bison

rpm -qa | grep -i gcc-c++

rpm -qa | grep -i glibc

rpm -qa | grep -i perl

rpm -qa | grep -i ncurses

rpm -qa | grep -i ncurses-devel

rpm -qa | grep -i libaio

(2)创建mysql用户

groupadd -g 600 mysql

useradd -u 601 -g mysql mysql

passwd mysql

(3)安装必要的rpm包

rpm -ivh mysql-community-common-5.7.19-1.el6.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.19-1.el6.x86_64.rpm

rpm -ivh mysql-community-libs-compat-5.7.19-1.el6.x86_64.rpm

rpm -ivh mysql-community-client-5.7.19-1.el6.x86_64.rpm

rpm -ivh mysql-community-server-5.7.19-1.el6.x86_64.rpm

(4)参数配置

root用户

vi ~/.bash_profile

PATH=$PATH:$HOME/bin:/usr/bin:/usr/share/mysql:/var/lib/mysql

 

vi /etc/security/limits.conf

mysql      soft    nproc   16384

mysql      hard    nproc   16384

mysql      soft    nofile  65536

mysql      hard    nofile  65536

mysql      hard    stack   1024000

mysql      soft    stack   1024000

vi /etc/my.cnf

[client]

# CLIENT #

port = 3306

socket=/var/lib/mysql/mysql.sock #socket文件路径,需要根据实际情况修改

default-character-set = utf8

[mysqld]

# GENERAL #

basedir = /usr #软件存放路径,需要根据实际情况修改

datadir=/mysql/3306/data #data存放路径,需要根据实际情况修改

socket = /var/lib/mysql/mysql.sock #socket文件路径,需要根据实际情况修改

pid-file = /var/run/mysqld/mysqld.pid #pidfile文件路径,需要根据实际情况修改

server-id = 1  #需要根据实际情况修改

sql_mode = "STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER"

user = mysql

default_storage_engine = InnoDB

character-set-server = utf8

skip-external-locking

skip-host-cache

skip-name-resolve

autocommit = on

max_allowed_packet = 16M

max_connections = 1000

max_user_connections = 1000

max_connect_errors = 1000000

wait_timeout = 1800

transaction_isolation = READ-COMMITTED

explicit_defaults_for_timestamp = 1

query-cache-type = 0

query-cache-size = 0

thread-cache-size = 50

open-files-limit = 65535

tmpdir = /mysql/3306/tmp #tmp文件存放路径,需要根据实际情况修改

slave_load_tmpdir = /mysql/3306/tmp #tmp文件存放路径,需要根据实际情况修改

# session memory settings #

tmp-table-size = 32M

max-heap-table-size = 32M

read_buffer_size = 16M

read_rnd_buffer_size = 32M

sort_buffer_size = 32M

join_buffer_size = 64M

key-buffer-size = 64M

# table cache performance settings #

table_open_cache = 4096

table_definition_cache = 4096

table_open_cache_instances = 64  #最大64

# INNODB #

innodb_open_files=2048

innodb_buffer_pool_size = RAM*60% #innodb缓冲池大小,需要根据实际情况修改,建议为RAM的60%-70%

innodb_sort_buffer_size = 64M

innodb_buffer_pool_instances = 8

innodb_buffer_pool_load_at_startup = 1

innodb_buffer_pool_dump_at_shutdown = 1

innodb_lru_scan_depth = 2000

innodb_io_capacity = 2000

innodb_io_capacity_max = 4000

innodb_file_format = Barracuda

innodb_file_format_max = Barracuda

innodb_purge_threads = 4

innodb_large_prefix = 1

innodb_thread_concurrency = 64

innodb_print_all_deadlocks = 1

innodb_log_file_size = 1G

innodb_log_buffer_size = 16M

innodb_log_files_in_group = 2

innodb_file_per_table=1

innodb-strict-mode = 1

innodb_flush_log_at_trx_commit = 1

innodb_log_files_in_group = 3

innodb_flush_method = O_DIRECT

innodb_undo_directory=/mysql/3306/undolog

innodb_undo_logs = 128

innodb_undo_tablespaces = 3

# BINARY LOGGING #

log-bin = /mysql/3306/binlog/bin.log #binlog存放路径,需要根据实际情况修改

expire-logs-days = 7

sync-binlog = 1

binlog_format="ROW"

log_bin_trust_function_creators = 1

binlog_cache_size = 2097152

# LOGGING #

log-error = /mysql/3306/log/error.log #errorlog存放路径,需要根据实际情况修改

log-queries-not-using-indexes = 1

slow-query-log = 1

slow-query-log-file = /mysql/3306/log/slowquery.log #slowlog存放路径,需要根据实际情况修改

long_query_time = 2

min_examined_row_limit = 100

[mysqld-5.6]

# metalock performance settings

metadata_locks_hash_instances=64

[mysqld-5.7]

# new innodb settings #

loose_innodb_numa_interleave=1

innodb_buffer_pool_dump_pct = 40

innodb_page_cleaners = 6

innodb_undo_log_truncate = 1

innodb_max_undo_log_size = 2G

innodb_purge_rseg_truncate_frequency = 128

(5)权限修改

chown -R mysql:mysql /usr/share/mysql

chown -R mysql:mysql /mysql

chmod -R 755 /mysql

(6)启动

备注:第一次执行service mysqld start ,mysql会自动根据/etc/my.cnf参数创建数据库。

service mysqld start

[root@oracle12c mysql]# service mysqld start

Initializing MySQL database:                               [  OK  ]

Starting mysqld:                                           [  OK  ]

(7)root初始密码修改

grep 'temporary password' /var/log/mysqld.log

mysql -uroot -p

mysql> set global validate_password_policy=0;

mysql> set global validate_password_length=5;

mysql>ALTER USER USER() IDENTIFIED BY '12345678';

mysql>flush privileges;

三、单主机多mysql数据库服务配置过程

在不关闭/重启mysql的情况下,重新启动一个新的mysql实例,使用3390端口,实现一台机器上同时运行两个数据库实例。

3.1、创建新的mysql实例数据存储目录

/mysql/3390/

mkdir -p /mysql/3390/

mkdir -p /mysql/3390/data/

mkdir -p /mysql/3390/binlog/

mkdir -p /mysql/3390/log/

mkdir -p /mysql/3390/tmp/

mkdir -p /mysql/3390/undolog/

/mysql/3390/data/

/mysql/3390/binlog/

/mysql/3390/log/

/mysql/3390/tmp/

/mysql/3390/undolog/

3.2、复制一份 my.cnf配置文件

cp /etc/my.cnf /mysql/3390/my.cnf

3.3、修改/mysql/3390/my.cnf文件,把默认的3306端口改成 3390,根据实际情况修改pid-file,socket,basedir,datadir

[client]

# CLIENT #

port = 3390

socket=/mysql/3390/mysql.sock #socket文件路径,需要根据实际情况修改

default-character-set = utf8

[mysqld]

# GENERAL #

port = 3390

basedir = /usr #软件存放路径,需要根据实际情况修改

datadir=/mysql/3390/data #data存放路径,需要根据实际情况修改

socket = /mysql/3390/mysql.sock #socket文件路径,需要根据实际情况修改

pid-file = /mysql/3390/mysqld.pid #pidfile文件路径,需要根据实际情况修改

server-id = 2  #需要根据实际情况修改

sql_mode = "STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER"

user = mysql

default_storage_engine = InnoDB

character-set-server = utf8

skip-external-locking

skip-host-cache

skip-name-resolve

autocommit = on

max_allowed_packet = 16M

max_connections = 1000

max_user_connections = 1000

max_connect_errors = 1000000

wait_timeout = 1800

transaction_isolation = READ-COMMITTED

explicit_defaults_for_timestamp = 1

query-cache-type = 0

query-cache-size = 0

thread-cache-size = 50

open-files-limit = 65535

tmpdir = /mysql/3390/tmp #tmp文件存放路径,需要根据实际情况修改

slave_load_tmpdir = /mysql/3390/tmp #tmp文件存放路径,需要根据实际情况修改

# session memory settings #

tmp-table-size = 32M

max-heap-table-size = 32M

read_buffer_size = 16M

read_rnd_buffer_size = 32M

sort_buffer_size = 32M

join_buffer_size = 64M

key-buffer-size = 64M

# table cache performance settings #

table_open_cache = 4096

table_definition_cache = 4096

table_open_cache_instances = 64  #最大64

# INNODB #

innodb_open_files=2048

innodb_buffer_pool_size = 300M #innodb缓冲池大小,需要根据实际情况修改,建议为RAM的60%-70%

innodb_sort_buffer_size = 64M

innodb_buffer_pool_instances = 8

innodb_buffer_pool_load_at_startup = 1

innodb_buffer_pool_dump_at_shutdown = 1

innodb_lru_scan_depth = 2000

innodb_io_capacity = 2000

innodb_io_capacity_max = 4000

innodb_file_format = Barracuda

innodb_file_format_max = Barracuda

innodb_purge_threads = 4

innodb_large_prefix = 1

innodb_thread_concurrency = 64

innodb_print_all_deadlocks = 1

innodb_log_file_size = 1G

innodb_log_buffer_size = 16M

innodb_log_files_in_group = 2

innodb_file_per_table=1

innodb-strict-mode = 1

innodb_flush_log_at_trx_commit = 1

innodb_log_files_in_group = 3

innodb_flush_method = O_DIRECT

innodb_undo_directory=/mysql/3390/undolog

innodb_undo_logs = 128

innodb_undo_tablespaces = 3

# BINARY LOGGING #

log-bin = /mysql/3390/binlog/bin.log #binlog存放路径,需要根据实际情况修改

expire-logs-days = 7

sync-binlog = 1

binlog_format="ROW"

log_bin_trust_function_creators = 1

binlog_cache_size = 2097152

# LOGGING #

log-error = /mysql/3390/log/error.log #errorlog存放路径,需要根据实际情况修改

log-queries-not-using-indexes = 1

slow-query-log = 1

slow-query-log-file = /mysql/3390/log/slowquery.log #slowlog存放路径,需要根据实际情况修改

long_query_time = 2

min_examined_row_limit = 100

[mysqld-5.6]

# metalock performance settings

metadata_locks_hash_instances=64

[mysqld-5.7]

# new innodb settings #

loose_innodb_numa_interleave=1

innodb_buffer_pool_dump_pct = 40

innodb_page_cleaners = 6

innodb_undo_log_truncate = 2

innodb_max_undo_log_size = 2G

innodb_purge_rseg_truncate_frequency = 128

3.4、初始化数据库

chown -R mysql:mysql /mysql/3390

chmod -R 755 /mysql/3390

mysql_install_db --defaults-file=/mysql/3390/my.cnf --datadir=/mysql/3390/data/

mysql是yum安装的,所以basedir=/usr就可以,它会自动在/usr下找mysql的安装目录。

3.5、启动mysql,要指定my.cnf文件启动

mysqld_safe --defaults-file=/mysql/3390/my.cnf &

3.6、登陆3390端口的mysql数据库

cat /root/.mysql_secret

# Password set for user 'root@localhost' at 2019-09-02 01:13:30

Dy.t9oAhC,af

mysql -S /mysql/3390/mysql.sock -P 3390 -p

mysql>ALTER USER USER() IDENTIFIED BY '12345678';

mysql>flush privileges;

3.7、停止mysql,需要指定对应的sock文件。

mysqladmin -uroot -S /mysql/3390/mysql.sock shutdown -p

转载于:https://www.cnblogs.com/JcLevy/p/11446920.html

mysql5.7 部署文档-rpm相关推荐

  1. loganalyzer部署文档-(第一部分)

    loganalyzer部署文档 环境准备: 简介 LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端.它提供了对日志的简单浏览.搜索.基本分析和一些图表报告的功能.数据可以从 ...

  2. centos7 后端部署文档

    centos7 部署文档 环境说明 pyenv的安装与使用 pipenv的安装与使用 supervisor的安装与使用 mysql的安装与使用 redis的安装与使用 环境说明 本次部暑基于 Linu ...

  3. Wcp知识管理系统部署文档

    Wcp知识管理系统部署文档 环境 CentOS-6.5-x86_64-bin-DVD1.iso jdk-7u79-linux-x64.tar.gz apache-tomcat-7.0.72.tar.g ...

  4. Ambari 部署文档

    Ambari 部署文档 说明: 一.把所需要的文件放到指定的目录下 二.集群主机配置(所有节点都要执行的) 2.1.安装前主机需要的软件 2.2.配置 NTP 服务(由邓哥配置完成) 2.3.配置主机 ...

  5. centos7安装rabbitmq_rabbitmq v3.7.16安装部署文档

    RabbitMQ v3.7.16安装部署文档 部署安装过程严格按照官方文档的流程. 前言 软件版本 os centos7(ubuntu也适用,需要替换部分命令) rabbitmq v3.7.16 (r ...

  6. 华为云鲲鹏服务器部署文档--java微服务

    华为云鲲鹏服务器部署文档 河南中电高科计算机技术有限公司 2020.5.9 适用于java微服务技术栈. CentOS 7.6 64bit ISO 适用于鲲鹏服务器arm架构的CentOS 7.6.1 ...

  7. 华为云鲲鹏服务器部署文档-修正版-CentOS+java微服务开发

    华为云鲲鹏服务器部署文档 河南中电高科计算机技术有限公司 http://www.ceht.com.cn 2020.5.12 适用于java微服务开发运行基础软件环境部署,实测通过. CentOS 7. ...

  8. Fabric部署文档汇总(仅供参考)

    老久之前研究Fabric记录的部署文档,有需要的可以做个参考! 这里编辑器不太好用,看起来有些乱,有要求的可以在这https://download.csdn.net/download/vohyeah/ ...

  9. Openmeetings—视频会议部署文档

    Openmeetings-视频会议部署文档 Linux丶晨星关注 0.3182019.11.15 19:48:49字数 1,714阅读 4,463 一.openmeeting简介 OpenMeetin ...

最新文章

  1. 前端领域的BEM到底是什么
  2. 【C++】 二叉树的基本知识及其遍历
  3. Redis的复制详解
  4. 记录:SqlParamater要点小结
  5. 丽江,是否一群失意的人聚合地
  6. 第11章 支撑向量机 SVM 学习笔记 上
  7. iOS商户进件之【营业执照编号校验】18位社会信用代码验证 unified social credit identifier
  8. Godot3游戏引擎入门之十:介绍一些常用的节点并开发一个小游戏(中)
  9. 在上海、苏州、深圳、长沙从“蜗居”到“安家”,8090后要付出多少?
  10. 使用Clonezilla进行P2V,备份还原完整过程
  11. 自定义电子邮件 html_如何在Windows 10中设置和自定义电子邮件帐户
  12. 苹果电脑可以装windows系统吗_苹果电脑MacBook双系统安装好后,如何下载Windows支持组件?...
  13. 《淘宝技术这十年》 读书笔记
  14. win10 查看计算机名称与用户名称
  15. xp支持python最高版本是多少_哪些版本的Python可以在Windows XP中运行?(What versions of Python will work in Windows XP?)...
  16. android水印控件,Android图片添加文字水印并保存水印文字图片到指定文件
  17. 如何查看Linux系统的状态信息?
  18. DELL笔记本开机启动项由network改为Hard Drive
  19. 安搭Share——人不要怕“变”,要守住自己的“常”
  20. 寄存器某一位置位或者清零

热门文章

  1. S5PV210开发 -- USB 你知道多少?(一)
  2. Android使用ConstraintLayout 加载RecyclerView数据显示不全
  3. Xposed简介以及小米去桌面广告的简单实现
  4. Android App Build Workflow
  5. 如何玩转网络安全下的深度学习?最全的学习资料清单看这里
  6. intellij idea 2018 license 可用无废话
  7. steam怎么看邮箱绑定的账号_lol手游appleid怎么绑定拳头账号 英雄联盟手游账号绑定方法_英雄联盟手游...
  8. thinkphp mysql类_PHP封装类似thinkphp连贯操作数据库的Db类(简单版)
  9. 计算机怎么恢复上一步,电脑怎么还原系统 电脑还原系统步骤盘点
  10. 其利断金前一句是什么_绍兴晚报丨裘亚黎说|围城外的灵魂拷问:人为什么要结婚?...