Mysql 5.7.17 离线版安装和数据迁移(centos 7)

本贴最后更新于 2447 天前,其中的信息可能已经事过景迁

总结下离线版 mysql 5.7.17 的安装步骤:

1.从官网下载mysql 离线版版安装包 mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz;
2.上传安装包mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz 到 centos 7 的 /usr/tool/ 目录 ;
3.进入/usr/tool/ ---> cd /usr/tool;
4.解压安装包:tar -zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz;
5.安装依赖: yum -y install perl perl-devel autoconf libaio;
6.进入/usr/local/mysql/ --->cd /usr/local/mysql/;
7.创建data目录:mkdir /usr/local/mysql/data;
8.添加mysql用户组和用户: groupadd mysql; useradd -r -g mysql -s /bin/false mysql;
9. 修改目录拥有者为mysql:chown -R mysql:mysql ./
10.初始化数据(下面是一条语句): ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/mysql.pid --tmpdir=/tmp
11.复制生成的密码(登录mysql时用):

mysqllixianpng

12.复制配置文件到/etc/my.cnf:cp -a ./support-files/my-default.cnf /etc/my.cnf (选择y)
13.mysql的服务脚本放到系统服务中: cp -a ./support-files/mysql.server /etc/init.d/mysqld
14.赋予可执行权限:chmod +x /etc/init.d/mysqld
15.添加服务:chkconfig --add mysqld (可用chkconfig --list命令查看,3,4,5都是ON证明已启动)
16.修改my.cnf文件:vi /etc/my.cnf, 编辑添加如下内容: log-bin = /home/data/logs/mysql/binlog/mysql-bin #开启二进制日志功能,binlog数据位置 log-bin-index = /home/data/logs/mysql/binlog/mysql-bin.index log_bin_trust_function_creators = 1 binlog_cache_size = 1M binlog_format = ROW expire_logs_days = 30 #超过30天的binlog删除 max_connections = 500 #最大连接数 port = 3306 socket = /tmp/mysql.sock pid-file = /usr/local/mysql/mysql.pid basedir = /usr/local/mysql datadir = /usr/local/mysql/data log_error =/home/data/logs/mysql/mysql-error.log user = mysql character-set-server = utf8 back_log = 1024 server-id = 1 long_query_time = 1 #开启慢查询 slow_query_log = 2 #慢查询时间(s) slow_query_log_file = /home/data/logs/mysql/mysql-slow.log
17.创建相应的日志目录和文件: mkdir /home/data/logs (存在则不创建) mkdir /home/data/logs/mysql mkdir /home/data/logs/mysql/binlog touch /home/data/logs/mysql/mysql-slow.log mkdir /home/data/logs/mysql/binlog/mysql-bin touch /home/data/logs/mysql/binlog/mysql-bin.index chown -R mysql:mysql /home/data/logs
18.把mysql客户端放到默认路径: ln -s /usr/local/mysql/bin/mysqld /usr/local/bin/mysqld ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
19.启动服务:service mysqld start (ps -ef |grep mysqld查看是否启动)
20.登录mysql:mysql -uroot -p,输入前面复制的密码
21.使用mysql库: use mysql: 修改root密码:set password for root@localhost = password('要设置的密码admin123'); 创建mystest用户:CREATE USER 'mystest'@'localhost' IDENTIFIED BY '要设置的密码admin123''; 查看是否创建成功:SELECT host, user FROM user WHERE user='soonfor'; 赋权限(除了DROP权限): GRANT ALL ON *.* TO 'mystest'@'localhost'; //全部 REVOKE DROP ON *.* FROM 'mystest'@'localhost'; //删除DROP权限 SHOW GRANTS FOR 'mystest'@'localhost'; //查看权限
22.设置远程访问: update user set host='%' where user='root' limit 1; update user set host='%' where user='mytest' limit 1; 刷新权限:flush privileges;
23.安装完成,可以使用创建的用户登录。

由于开始安装的时候没有注意到 Linux 磁盘大小的问题,没有过久硬盘就爆了,需要挂载新的数据盘,将 mysql

数据迁移到新的挂载盘上。

查看 mysql 的安装路径

执行查询 SQL

show variables like '%dir%';

sqldatapng

datadir 就是数据路径

转移操作

  • 新建 mysql 数据目录:

    mkdir -p /home/mysqldata # 改变数据库的归属为 mysql chown -R mysql.mysql /data/mysql
  • 停止 sql 服务:

    service mysqld stop
  • 把原来 mysql 安装的数据路径复制到新的文件目录下:

    cp -rf /usr/local/mysql/data /data/mysqlData/
  • 修改 mysql 的 my.cnf 文件:

    cp /etc/my.cnf /etc/my.cnf.bak vi /etc/my.cnf # 文件内容如下, 需要修改 datadir , socket 对应的目录 log-bin = /home/data/logs/mysql/binlog/mysql-bin #开启二进制日志功能,binlog数据位置 log-bin-index = /home/data/logs/mysql/binlog/mysql-bin.index log_bin_trust_function_creators = 1 binlog_cache_size = 1M binlog_format = ROW expire_logs_days = 30 #超过30天的binlog删除 max_connections = 500 #最大连接数 port = 3306 socket = /tmp/mysql.sock pid-file = /usr/local/mysql/mysql.pid basedir = /usr/local/mysql datadir = /usr/local/mysql/data log_error =/home/data/logs/mysql/mysql-error.log user = mysql character-set-server = utf8 back_log = 1024 server-id = 1 long_query_time = 1 #开启慢查询 slow_query_log = 2 #慢查询时间(s) slow_query_log_file = /home/data/logs/mysql/mysql-slow.log
  • 修改 MySQL 启动脚本:

    vi /etc/init.d/mysqld

mysqldpng

  • 重启 mysql 服务:

    service mysqld restart
  • 最后执行下 show variables like '%dir%' :
    sqldatapng

  • MySQL

    MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是最流行的关系型数据库管理系统之一。

    693 引用 • 537 回帖
  • CentOS

    CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise Linux 依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用。两者的不同在于 CentOS 并不包含封闭源代码软件。

    239 引用 • 224 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...

推荐标签 标签

  • Wide

    Wide 是一款基于 Web 的 Go 语言 IDE。通过浏览器就可以进行 Go 开发,并有代码自动完成、查看表达式、编译反馈、Lint、实时结果输出等功能。

    欢迎访问我们运维的实例: https://wide.b3log.org

    30 引用 • 218 回帖 • 639 关注
  • SendCloud

    SendCloud 由搜狐武汉研发中心孵化的项目,是致力于为开发者提供高质量的触发邮件服务的云端邮件发送平台,为开发者提供便利的 API 接口来调用服务,让邮件准确迅速到达用户收件箱并获得强大的追踪数据。

    2 引用 • 8 回帖 • 496 关注
  • GitHub

    GitHub 于 2008 年上线,目前,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。正因为这些功能所提供的便利,又经过长期的积累,GitHub 的用户活跃度很高,在开源世界里享有深远的声望,并形成了社交化编程文化(Social Coding)。

    210 引用 • 2040 回帖
  • 开源

    Open Source, Open Mind, Open Sight, Open Future!

    411 引用 • 3588 回帖
  • Angular

    AngularAngularJS 的新版本。

    26 引用 • 66 回帖 • 548 关注
  • Chrome

    Chrome 又称 Google 浏览器,是一个由谷歌公司开发的网页浏览器。该浏览器是基于其他开源软件所编写,包括 WebKit,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。

    63 引用 • 289 回帖
  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    25361 引用 • 104734 回帖
  • Laravel

    Laravel 是一套简洁、优雅的 PHP Web 开发框架。它采用 MVC 设计,是一款崇尚开发效率的全栈框架。

    20 引用 • 23 回帖 • 740 关注
  • 百度

    百度(Nasdaq:BIDU)是全球最大的中文搜索引擎、最大的中文网站。2000 年 1 月由李彦宏创立于北京中关村,致力于向人们提供“简单,可依赖”的信息获取方式。“百度”二字源于中国宋朝词人辛弃疾的《青玉案·元夕》词句“众里寻他千百度”,象征着百度对中文信息检索技术的执著追求。

    63 引用 • 785 回帖 • 92 关注
  • Redis

    Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API。从 2010 年 3 月 15 日起,Redis 的开发工作由 VMware 主持。从 2013 年 5 月开始,Redis 的开发由 Pivotal 赞助。

    286 引用 • 248 回帖
  • 面试

    面试造航母,上班拧螺丝。多面试,少加班。

    325 引用 • 1395 回帖
  • 周末

    星期六到星期天晚,实行五天工作制后,指每周的最后两天。再过几年可能就是三天了。

    14 引用 • 297 回帖
  • CAP

    CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

    12 引用 • 5 回帖 • 632 关注
  • WebComponents

    Web Components 是 W3C 定义的标准,它给了前端开发者扩展浏览器标签的能力,可以方便地定制可复用组件,更好的进行模块化开发,解放了前端开发者的生产力。

    1 引用 • 9 关注
  • MongoDB

    MongoDB(来自于英文单词“Humongous”,中文含义为“庞大”)是一个基于分布式文件存储的数据库,由 C++ 语言编写。旨在为应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似 JSON 的 BSON 格式,因此可以存储比较复杂的数据类型。

    91 引用 • 59 回帖 • 4 关注
  • IBM

    IBM(国际商业机器公司)或万国商业机器公司,简称 IBM(International Business Machines Corporation),总公司在纽约州阿蒙克市。1911 年托马斯·沃森创立于美国,是全球最大的信息技术和业务解决方案公司,拥有全球雇员 30 多万人,业务遍及 160 多个国家和地区。

    17 引用 • 53 回帖 • 144 关注
  • sts
    2 引用 • 2 回帖 • 227 关注
  • 新人

    让我们欢迎这对新人。哦,不好意思说错了,让我们欢迎这位新人!
    新手上路,请谨慎驾驶!

    52 引用 • 228 回帖
  • 运维

    互联网运维工作,以服务为中心,以稳定、安全、高效为三个基本点,确保公司的互联网业务能够 7×24 小时为用户提供高质量的服务。

    150 引用 • 257 回帖 • 1 关注
  • GitBook

    GitBook 使您的团队可以轻松编写和维护高质量的文档。 分享知识,提高团队的工作效率,让用户满意。

    3 引用 • 8 回帖 • 1 关注
  • 大疆创新

    深圳市大疆创新科技有限公司(DJI-Innovations,简称 DJI),成立于 2006 年,是全球领先的无人飞行器控制系统及无人机解决方案的研发和生产商,客户遍布全球 100 多个国家。通过持续的创新,大疆致力于为无人机工业、行业用户以及专业航拍应用提供性能最强、体验最佳的革命性智能飞控产品和解决方案。

    2 引用 • 14 回帖 • 1 关注
  • JetBrains

    JetBrains 是一家捷克的软件开发公司,该公司位于捷克的布拉格,并在俄国的圣彼得堡及美国麻州波士顿都设有办公室,该公司最为人所熟知的产品是 Java 编程语言开发撰写时所用的集成开发环境:IntelliJ IDEA

    18 引用 • 54 回帖
  • Ruby

    Ruby 是一种开源的面向对象程序设计的服务器端脚本语言,在 20 世纪 90 年代中期由日本的松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)设计并开发。在 Ruby 社区,松本也被称为马茨(Matz)。

    7 引用 • 31 回帖 • 249 关注
  • 自由行
    1 关注
  • AngularJS

    AngularJS 诞生于 2009 年,由 Misko Hevery 等人创建,后为 Google 所收购。是一款优秀的前端 JS 框架,已经被用于 Google 的多款产品当中。AngularJS 有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入等。2.0 版本后已经改名为 Angular。

    12 引用 • 50 回帖 • 508 关注
  • Webswing

    Webswing 是一个能将任何 Swing 应用通过纯 HTML5 运行在浏览器中的 Web 服务器,详细介绍请看 将 Java Swing 应用变成 Web 应用

    1 引用 • 15 回帖 • 640 关注
  • Solo

    Solo 是一款小而美的开源博客系统,专为程序员设计。Solo 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    1441 引用 • 10069 回帖 • 495 关注