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

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

总结下离线版 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 是最流行的关系型数据库管理系统之一。

    675 引用 • 535 回帖
  • CentOS

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

    238 引用 • 224 回帖 • 1 关注

相关帖子

欢迎来到这里!

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

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

推荐标签 标签

  • 深度学习

    深度学习(Deep Learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。

    40 引用 • 40 回帖 • 1 关注
  • OnlyOffice
    4 引用 • 23 关注
  • 机器学习

    机器学习(Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

    76 引用 • 37 回帖 • 1 关注
  • 微信

    腾讯公司 2011 年 1 月 21 日推出的一款手机通讯软件。用户可以通过摇一摇、搜索号码、扫描二维码等添加好友和关注公众平台,同时可以将自己看到的精彩内容分享到微信朋友圈。

    129 引用 • 793 回帖 • 1 关注
  • 分享

    有什么新发现就分享给大家吧!

    242 引用 • 1748 回帖 • 1 关注
  • SSL

    SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS 与 SSL 在传输层对网络连接进行加密。

    69 引用 • 190 回帖 • 497 关注
  • C

    C 语言是一门通用计算机编程语言,应用广泛。C 语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

    83 引用 • 165 回帖 • 42 关注
  • 脑图

    脑图又叫思维导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效,是一种实用性的思维工具。

    21 引用 • 58 回帖
  • Oracle

    Oracle(甲骨文)公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989 年正式进入中国市场。2013 年,甲骨文已超越 IBM,成为继 Microsoft 后全球第二大软件公司。

    103 引用 • 126 回帖 • 449 关注
  • Sphinx

    Sphinx 是一个基于 SQL 的全文检索引擎,可以结合 MySQL、PostgreSQL 做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。

    1 引用 • 181 关注
  • Mac

    Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。

    164 引用 • 594 回帖
  • FlowUs

    FlowUs.息流 个人及团队的新一代生产力工具。

    让复杂的信息管理更轻松、自由、充满创意。

    1 引用
  • 前端

    前端技术一般分为前端设计和前端开发,前端设计可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括 HTML、CSS 以及 JavaScript 等。

    247 引用 • 1347 回帖 • 1 关注
  • WiFiDog

    WiFiDog 是一套开源的无线热点认证管理工具,主要功能包括:位置相关的内容递送;用户认证和授权;集中式网络监控。

    1 引用 • 7 回帖 • 545 关注
  • SOHO

    为成为自由职业者在家办公而努力吧!

    7 引用 • 55 回帖 • 92 关注
  • WordPress

    WordPress 是一个使用 PHP 语言开发的博客平台,用户可以在支持 PHP 和 MySQL 数据库的服务器上架设自己的博客。也可以把 WordPress 当作一个内容管理系统(CMS)来使用。WordPress 是一个免费的开源项目,在 GNU 通用公共许可证(GPLv2)下授权发布。

    45 引用 • 113 回帖 • 313 关注
  • Thymeleaf

    Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。类似 Velocity、 FreeMarker 等,它也可以轻易的与 Spring 等 Web 框架进行集成作为 Web 应用的模板引擎。与其它模板引擎相比,Thymeleaf 最大的特点是能够直接在浏览器中打开并正确显示模板页面,而不需要启动整个 Web 应用。

    11 引用 • 19 回帖 • 319 关注
  • Vim

    Vim 是类 UNIX 系统文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff)、语法高亮、全面的帮助系统、本地脚本(Vimscript)和便于选择的可视化模式。

    27 引用 • 66 回帖
  • CSDN

    CSDN (Chinese Software Developer Network) 创立于 1999 年,是中国的 IT 社区和服务平台,为中国的软件开发者和 IT 从业者提供知识传播、职业发展、软件开发等全生命周期服务,满足他们在职业发展中学习及共享知识和信息、建立职业发展社交圈、通过软件开发实现技术商业化等刚性需求。

    14 引用 • 155 回帖
  • MongoDB

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

    90 引用 • 59 回帖
  • OAuth

    OAuth 协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是 oAuth 的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此 oAuth 是安全的。oAuth 是 Open Authorization 的简写。

    36 引用 • 103 回帖 • 9 关注
  • 智能合约

    智能合约(Smart contract)是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。智能合约概念于 1994 年由 Nick Szabo 首次提出。

    1 引用 • 11 回帖 • 7 关注
  • Lute

    Lute 是一款结构化的 Markdown 引擎,支持 Go 和 JavaScript。

    25 引用 • 191 回帖 • 21 关注
  • 创造

    你创造的作品可能会帮助到很多人,如果是开源项目的话就更赞了!

    173 引用 • 990 回帖
  • Hexo

    Hexo 是一款快速、简洁且高效的博客框架,使用 Node.js 编写。

    21 引用 • 140 回帖 • 28 关注
  • Mobi.css

    Mobi.css is a lightweight, flexible CSS framework that focus on mobile.

    1 引用 • 6 回帖 • 697 关注
  • PHP

    PHP(Hypertext Preprocessor)是一种开源脚本语言。语法吸收了 C 语言、 Java 和 Perl 的特点,主要适用于 Web 开发领域,据说是世界上最好的编程语言。

    164 引用 • 407 回帖 • 526 关注