mysql5.7 部署文档-rpm
一、准备工作
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相关推荐
- loganalyzer部署文档-(第一部分)
loganalyzer部署文档 环境准备: 简介 LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端.它提供了对日志的简单浏览.搜索.基本分析和一些图表报告的功能.数据可以从 ...
- centos7 后端部署文档
centos7 部署文档 环境说明 pyenv的安装与使用 pipenv的安装与使用 supervisor的安装与使用 mysql的安装与使用 redis的安装与使用 环境说明 本次部暑基于 Linu ...
- Wcp知识管理系统部署文档
Wcp知识管理系统部署文档 环境 CentOS-6.5-x86_64-bin-DVD1.iso jdk-7u79-linux-x64.tar.gz apache-tomcat-7.0.72.tar.g ...
- Ambari 部署文档
Ambari 部署文档 说明: 一.把所需要的文件放到指定的目录下 二.集群主机配置(所有节点都要执行的) 2.1.安装前主机需要的软件 2.2.配置 NTP 服务(由邓哥配置完成) 2.3.配置主机 ...
- centos7安装rabbitmq_rabbitmq v3.7.16安装部署文档
RabbitMQ v3.7.16安装部署文档 部署安装过程严格按照官方文档的流程. 前言 软件版本 os centos7(ubuntu也适用,需要替换部分命令) rabbitmq v3.7.16 (r ...
- 华为云鲲鹏服务器部署文档--java微服务
华为云鲲鹏服务器部署文档 河南中电高科计算机技术有限公司 2020.5.9 适用于java微服务技术栈. CentOS 7.6 64bit ISO 适用于鲲鹏服务器arm架构的CentOS 7.6.1 ...
- 华为云鲲鹏服务器部署文档-修正版-CentOS+java微服务开发
华为云鲲鹏服务器部署文档 河南中电高科计算机技术有限公司 http://www.ceht.com.cn 2020.5.12 适用于java微服务开发运行基础软件环境部署,实测通过. CentOS 7. ...
- Fabric部署文档汇总(仅供参考)
老久之前研究Fabric记录的部署文档,有需要的可以做个参考! 这里编辑器不太好用,看起来有些乱,有要求的可以在这https://download.csdn.net/download/vohyeah/ ...
- Openmeetings—视频会议部署文档
Openmeetings-视频会议部署文档 Linux丶晨星关注 0.3182019.11.15 19:48:49字数 1,714阅读 4,463 一.openmeeting简介 OpenMeetin ...
最新文章
- 前端领域的BEM到底是什么
- 【C++】 二叉树的基本知识及其遍历
- Redis的复制详解
- 记录:SqlParamater要点小结
- 丽江,是否一群失意的人聚合地
- 第11章 支撑向量机 SVM 学习笔记 上
- iOS商户进件之【营业执照编号校验】18位社会信用代码验证 unified social credit identifier
- Godot3游戏引擎入门之十:介绍一些常用的节点并开发一个小游戏(中)
- 在上海、苏州、深圳、长沙从“蜗居”到“安家”,8090后要付出多少?
- 使用Clonezilla进行P2V,备份还原完整过程
- 自定义电子邮件 html_如何在Windows 10中设置和自定义电子邮件帐户
- 苹果电脑可以装windows系统吗_苹果电脑MacBook双系统安装好后,如何下载Windows支持组件?...
- 《淘宝技术这十年》 读书笔记
- win10 查看计算机名称与用户名称
- xp支持python最高版本是多少_哪些版本的Python可以在Windows XP中运行?(What versions of Python will work in Windows XP?)...
- android水印控件,Android图片添加文字水印并保存水印文字图片到指定文件
- 如何查看Linux系统的状态信息?
- DELL笔记本开机启动项由network改为Hard Drive
- 安搭Share——人不要怕“变”,要守住自己的“常”
- 寄存器某一位置位或者清零
热门文章
- S5PV210开发 -- USB 你知道多少?(一)
- Android使用ConstraintLayout 加载RecyclerView数据显示不全
- Xposed简介以及小米去桌面广告的简单实现
- Android App Build Workflow
- 如何玩转网络安全下的深度学习?最全的学习资料清单看这里
- intellij idea 2018 license 可用无废话
- steam怎么看邮箱绑定的账号_lol手游appleid怎么绑定拳头账号 英雄联盟手游账号绑定方法_英雄联盟手游...
- thinkphp mysql类_PHP封装类似thinkphp连贯操作数据库的Db类(简单版)
- 计算机怎么恢复上一步,电脑怎么还原系统 电脑还原系统步骤盘点
- 其利断金前一句是什么_绍兴晚报丨裘亚黎说|围城外的灵魂拷问:人为什么要结婚?...