第一种:

原始数据库不需要重新安装:

默认mysql会安装在/var/lib/mysql这里,若将数据迁移到/data/mysql目录下,步骤如下:

1、停止mysql服务

2、#cp /var/lib/mysql/* /data/mysql/

#chown -R mysql.mysql /data/mysql

3、修改my.cnf文件

basedir = /usr

datadir = /data/mysql

socket = /data/mysql/mysql.sock

pid-file = /data/mysql/hostname.pid

如果是第三方的mysql-rpm包安装,默认配置文件在/usr/my.cnf目录下

如果是yum安装,配置文件在/etc/my.cnf

4、修改/etc/init.d/mysqld(yum安装用这个,rpm第三方安装在这里改/etc/init.d/mysql)的datadir目录

5、迁移之后mysql -u root -p 是进不去的,需要重新设置root密码

#mysqld_safe --skip-grant-tables &

#mysql (另开一个窗口执行)

>use mysql;

>update user set password=password(‘新密码’) where user=’root’

>flush privileges;

6、重启服务

#/etc/init.d/mysql start

这时在执行#mysql -uroot -p 可以进去,但是show databases时会先让set一遍密码,按照提示操作就可以了。

到这数据库迁移已经完成,之前的数据库都可以正常操作。

第二种

数据库需要重新安装(必须是相同版本):

1、重新安装之后默认的路径还是/var/lib/mysql,如果想迁移到/data目录下,按照第一种得步骤操作就可以。

2、之前的数据库恢复步骤如下:

a) 停止mysql服务

b) 将之前的/var/lib/msyql/order2017拷贝到/data/mysql目录下。修改权限chown -R mysql.mysql /data/mysql/order2017 这个时候数据库和表存在,但是查看数据时会报1146这个错误;继续以下操作

c) 拷贝之前的/var/lib/mysql/ibdata1覆盖/data/mysql/ibdata1

d) 重启mysql服务

到这里重新安装之后之前的数据库也可以访问

centos下mysql数据迁移方法的更多相关文章

  1. centos下Elasticsearch数据迁移与备份

    ########### ### 共享创建es官方网站就一句话 ########   1.下载 文件共享 .. rpm -i http://mirror.symnds.com/distributions ...

  2. MySQL数据迁移那些事儿

    前言: 在平时工作中,经常会遇到数据迁移的需求,比如要迁移某个表.某个库或某个实例.根据不同的需求可能要采取不同的迁移方案,数据迁移过程中也可能会遇到各种大小问题.本篇文章,我们一起来看下 MySQL ...

  3. CentOS 下 MySQL DateBasic 抢救

    CentOS 下 MySQL DateBasic 抢救 强 Kill 数据库进程. 分析问题:确定报错内容 报错信息:The server quit without updating PID file ...

  4. CentOS下MySQL 5.7编译安装

    CentOS下MySQL 5.7编译安装   文章目录 安装依赖包 下载相应源码包 添加mysql用户 预编译 编译安装 启动脚本,设置开机自启动 /etc/my.cnf,仅供参考 初始化数据库 设置 ...

  5. CentOS下Mysql安装教程

    CentOS下Mysql安装教程 本人学习Linux时使用的是CentOs5.5版本,在该环境中,Mysql的安装方法有很多种,下面我只讲我这次成功了的方法,作为一个记录,供大家参考,同时给自己做一个 ...

  6. CentOS 下mysql ERROR&n…

    CentOS 下mysql ERROR 1045: Access denied for user: 'root@localhost' (Using password: NO) 描述:在操作数据库时会出 ...

  7. CentOS下mysql常用命令

    CentOS下mysql常用命令   1.开启和关闭 1.1.开启 service mysql start 1.2.关闭 service mysql stop 1.3.重启 service mysql ...

  8. CentOS下挂载数据盘

    CentOS下挂载数据盘 1.显示磁盘使用情况:#df 2.显示磁盘:#fdisk -l 3.格式化分区:#mkfs.ext4 /dev/vdb1           //注:将/dev/vdb1格式 ...

  9. CentOS 下 MySQL 5.6 基于 RPM 的下载、安装、配置

    CentOS 下 MySQL 5.6 基于 RPM 的下载.安装.配置 系统: CentOS 7 x86_64 MySQL 版本: 5.6.40 安装方式: RPM 下载 下载地址 操作系统 选择 R ...

随机推荐

  1. ZOJ - 3661 pam

    题意:给一个字符串,和每个字符代表的val,每个回文串的价值就是前半部分的val26进制%777777777,求价值第k小的回文串 题解:建个pam,然后dfs两边(0,1),统计价值sort一遍就好 ...

  2. strom:实时的WordCount

    集采单词 package wordcount; import java.io.File; import java.io.IOException; import java.util.Collection ...

  3. python-day1笔记

    # 1.编程语言的作用及与操作系统和硬件的关系:#编程语言就是人与电脑之间沟通的介质. # 2.应用程序->操作系统->硬件:#应用程序通过操作系统来控制计算机硬件. #3. cpu-&g ...

  4. 函数使用一:采购订单BAPI_PO_CREATE1

    REPORT YTEST01. DATA:GS_POHEADER TYPE BAPIMEPOHEADER, GS_POHEADERX TYPE BAPIMEPOHEADERX, GT_RETURN T ...

  5. MySQL5.6复制技术(4)-MySQL主从复制过滤参数

     复制的过滤主要有2种方式: 在主服务器在把事件从进二制日志中过滤掉,相关的参数是:binlog_do_db和binlog_ignore_db. 在从服务器上把事件从中继日志中过滤掉,相关的参数是re ...

  6. Python的time和datetime

    #python中时间日期格式化符号 %y 两位数的年份表示(00-99) %Y 四位数的年份表示(000-9999) %m 月份(01-12) %d 月内中的一天(0-31) %H 24小时制小时数( ...

  7. js正则表达式 replace替换url的参数

    /* 定义替换对象键值 */var setReferArgs = function(){    var referArgs = new Object();    referArgs['#userID\ ...

  8. python settings :RROR 1130: Host 'XXXXXX' is not allowed to connect to this MySQL server

    pymysql.err.InternalError: (1130, u"Host '127.0.0.1' is not allowed to connect to this MySQL se ...

  9. nginx:负载均衡实战(二) keepalived入门

    1.keepalived介绍 顾名思义,keepalived就是保持网络在线的,用来保证集群高可用HA的服务软件.主要防止出现单点故障(坏了一个点导致整个系统架构不可用) 2.详解keepalived ...

  10. 关于iOS设备的那些事

    首先推荐一个在用的库XYQuick 地址:https://github.com/uxyheaven/XYQuick idfa: 获取方式 [ASIdentifierManager sharedMana ...