mysql启动命令指定data目录_CentOS 7下MySQL的data目录更改后,使用mysqld服务启动失败...

在CentOS 7系统下,通过rpm和yum命令安装MySQL,一般会采取service mysqld start命令来启动MySQL。在MySQL的配置文件/etc/my.cnf中,默认的data路径是:/var/lib/mysql,socket的默认路径是/var/lib/mysql/mysql.sock。为了数据安全问题,一般会将MySQL的data路径进行修改,在修改路径后,都会遇到一个普遍的问题,service mysqld start命令启动不了,mysql命令无法执行的问题,针对这些问题,下面部分解决方案,以供大家参考。

首先在修改data目录前,先将数据库停止服务                                                                                 service mysqld stop

在需要移动的目标文件夹下建立目标文件夹                                                                                          MySQL的data文件存放目录:mkdir /mysqldata/data                                                                      MySQL的sock文件:mkdir /mysqldata/tmp(默认sock保存在data文件中)

将数据库的文件移动到新的data目录下                                                                                                mv /var/lib/mysql/*  /mysqldata/data

修改MySQL的配置文件                                                                                                     vi/etc/my.conf

修改配置

[mysqld]

datadir=/var/lib/mysql换成 datadir=/mysqldata/data

socket= /mysqldata/tmp/mysql.sock

注意:service mysqld start 启动时通过mysqld_safe进行启动的,同时要修改[mysqld_safe]和[client]         [mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

datadir=datadir=/mysqldata/data

socket = /mysqldata/tmp/mysql.sock

[client]

socket = /mysqldata/tmp/mysql.sock

修改/etc/selinux/config文件中设置SELINUX=disabled ,然后重新系统                                                       若前面内容全部修改完成后,启动service mysqld start 一直无响应,查看日志会发现错误提示是:vi /var/log/mysqld.log:[Warning] Can't create test file xxx.lower-test,解决方案就是将设置SELINUX=disabled,重启系统,否则在启动MySQL时会被拒绝。

启动MySQL成功:                                                                                                                           service mysqld start

在安装MySQL时,遇到了这个问题,多次尝试找到的比较合适的解决方案,总结一下给遇到问题的朋友一些参考,若文章有问题的话,希望大家能够给予批评与指正,谢谢。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是安装mysql5.6.51的步骤: 1. 下载mysql5.6.51的安装包,可以从官网或者镜像网站进行下载。 2. 解压安装包,使用以下命令进行解压: ``` tar zxvf mysql-5.6.51.tar.gz ``` 3. 安装必要的依赖包,使用以下命令安装: ``` yum install -y cmake ncurses-devel ``` 4. 创建mysql用户和组,使用以下命令创建: ``` groupadd mysql useradd -r -g mysql -s /bin/false mysql ``` 5. 进入mysql安装目录使用以下命令进行编译: ``` cd mysql-5.6.51 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_DATADIR=/usr/local/mysql/data \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_READLINE=1 \ -DWITH_SSL=system \ -DWITH_ZLIB=system \ -DENABLED_LOCAL_INFILE=1 \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci ``` 6. 编译完成后,使用以下命令进行安装: ``` make && make install ``` 7. 初始化mysql数据库,使用以下命令进行初始化: ``` cd /usr/local/mysql ./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data ``` 8. 修改配置文件,使用以下命令进行修改: ``` cp support-files/my-default.cnf /etc/my.cnf ``` 在/etc/my.cnf文件中添加以下内容: ``` [mysqld] datadir=/usr/local/mysql/data socket=/usr/local/mysql/mysql.sock user=mysql ``` 9. 启动mysql服务使用以下命令进行启动: ``` /usr/local/mysql/support-files/mysql.server start ``` 10. 测试mysql服务使用以下命令进行测试: ``` /usr/local/mysql/bin/mysql -uroot -p ``` 输入初始密码(在初始化mysql数据库时生成的),进入mysql命令行后,即表示安装成功。 希望我的回答能够帮助到您,如有疑问请随时提出。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值