• [Ubuntu] 将mysql的数据库转移到ntfs分区下面


    我的PHP环境是由apache+php+mysql+phpmyadmin搭建起来的,详情请参考我的另一篇文章:

    [Ubuntu] 转载:Ubuntu下安装apache+php+mysql+phpmyadmin 

    但由于我是使用win7+ubuntu的,虽然基本上开发都在ubuntu下面,但有时也需要在win7下面运行一下网站的,所以我就要把mysql转移到ntfs上面去,但其中遇到了比较麻烦的问题,就是ntfs挂载在ubuntu下面的文件权限都是777的,具体操作过程遇到的问题和解决如下:

    1. 修改 /etc/mysql/my.cnf

    datadir        = /var/lib/mysql 

    改为

    datadir        = /media/MyDocuments/mysql 

    尝试重启mysql

    sudo /etc/init.d/mysql stop

    sudo /etc/init.d/mysql start 

    结果mysql怎么也重启不来

    查看日志,/var/log/mysql/error.log,如下:

    100819 15:10:20 [Note] Plugin 'FEDERATED' is disabled.
    ^G
    /usr/sbin/mysqld: Can't find file: './mysql/plugin.frm' (errno: 13)
    100819 15:10:20 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
    100819 15:10:20  InnoDB: Operating system error number 13 in a file operation.
    InnoDB: The error means mysqld does not have the access rights to
    InnoDB: the directory.
    InnoDB: File name .
    /ibdata1
    InnoDB: File operation call: 'open'.
    InnoDB: Cannot 
    continue operation.

    查了很久,基本都是说apparmor的问题,其实这个在my.cnf里面也有提到过了,

    # * IMPORTANT
    #
       If you make changes to these settings and your system uses apparmor, you may
    #
       also need to also adjust /etc/apparmor.d/usr.sbin.mysqld.

    ok,这样的话,就明白很多了,修改/etc/apparmor.d/usr.sbin.mysqld即可。

    /var/lib/mysql/ r,
    /var/lib/mysql/** rwk,

    改为

    #/var/lib/mysql/ r,
    #
    /var/lib/mysql/** rwk,
    /media/MyDocuments/mysql/ r,
    /media/MyDocuments/mysql/** rwk,

    再运行一下:/etc/init.d/apparmor reload 

    重启mysql,搞掂!

  • 相关阅读:
    1.8新特性
    线程池
    微服务简介
    缓存三大问题
    Redis分布式锁的正确实现方式
    【java-10&11&12】java语言(Hello World相关)
    【postman】postman 安装失败
    【java-04-09集】JDK的下载和安装&配置环境变量(临时和永久)&命令行方式
    【ISTQB】TM&TA&TTA区别
    【git】学习地址
  • 原文地址:https://www.cnblogs.com/davidhhuan/p/2174291.html
Copyright © 2020-2023  润新知