zoukankan      html  css  js  c++  java
  • 转载 更改mysql 数据存储路径

    再次提醒:这篇文章只在MySQL5.6.28 
    Red Hat Enterprise Linux Server release 6.7 (Santiago)测试通过

    网上修改存储路径的文章各种各样,之前服务器搬迁的时候,因为原本的空间不足,修改的时候也是照着网上的来,期间各种错误,最后也是莫名其妙的成功了(三台服务器只成功了两台)!这次测试服务器重做系统再次操作的时候,仔细看了MySQL的err日志,发现竟然如此简单!请看小弟一一道来!

    背景:数据库全部默认装完以后,数据库存储路径是在/var/lib/mysql下,我需要将其更改到/data/下,我在/data/挂载了一块300G的硬盘。

    首先,将/var/lib/mysql复制到/data/下,命令如下:

    cp -rp /var/lib/mysql /data/
    
    • 1
    • 2

    注意,这里的-p参数是重点!!!

    -p:源目录或者文件的属性保留
    • 1

    网上基本上大部分的文章都没有提到这点,所有会有一部分文章说后续还要更改权限啊,用户啊之类的,其实你需要在复制的时候加上这个参数就可以全部解决!

    然后,因为我的配置文件在安装的时候默认是/usr/my.cnf,下面是安装完的提示:

    New default config file was created as /usr/my.cnf and
    will be used by default by the server when you start it.
    You may edit this file to change server settings
    • 1
    • 2
    • 3

    但是我更习惯在/etc/my.cnf。所以复制一份到/etc/下,然后在配置文件中增加以下两行即可!

        [mysqld]
        #以下两行是在[mysqld]标签下的
        socket = /data/mysql/mysql.sock
        datadir = /data/mysql
    • 1
    • 2
    • 3
    • 4

    然后就可以正常启动了,是不是特!别!简!单!还需要注意以下几点:

    1. 所有操作都得先关闭数据库!
    2. 将/usr/my.cnf复制一份到/etc/my.cnf后,/usr/my.cnf下的配置自动就失效了。这个不知道是不是所有版本的都这样,没仔细研究过。
    3. MySQL报错习惯看错误日志,比控制台输出的错误信息要详细的多。比方说如果是普通的复制,修改完配置文件控制台报的是”pid”文件错误还是”mysql.sock”错误来着。但是你在err日志中查看,会看到‘./mysql/XXX.frm’ 之类的错误。但是这个文件确实存在,仔细看就会发现,所属用户从mysql变成了root,导致mysql启动的时候权限不足!

    2017/08/09补充 
    之前弄完以后,是通过navicat连接的,连接成功。但是今天通过命令行直接连接的时候,报错

    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
    • 1

    很奇怪,为什么mysql使用的还是原先的sock的位置。推测应该是mysql的服务端也就是mysqld的配置已经更新成功,但是mysql客户端的还没更新,后查找资料,在my.cnf下增加如下配置即可!

    [mysql]
    socket=/data/mysql/mysql.sock
    • 1
    • 2

    2017/08/31补充 
    在使用mysqldump命令的时候,又出现了找不到sock的错误,需要增加以下配置

    [mysqldump]
    socket=/data/mysql/mysql.sock
  • 相关阅读:
    个人冲刺二(7)
    个人冲刺二(6)
    个人冲刺二(5)
    个人冲刺二(4)
    对称二叉树 · symmetric binary tree
    108 Convert Sorted Array to Binary Search Tree数组变成高度平衡的二叉树
    530.Minimum Absolute Difference in BST 二叉搜索树中的最小差的绝对值
    pp 集成工程师 mism师兄问一问
    17. Merge Two Binary Trees 融合二叉树
    270. Closest Binary Search Tree Value 二叉搜索树中,距离目标值最近的节点
  • 原文地址:https://www.cnblogs.com/ggds/p/8663372.html
Copyright © 2011-2022 走看看