900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > Linux下Mysql更改数据存储路径

Linux下Mysql更改数据存储路径

时间:2022-04-06 01:59:04

相关推荐

Linux下Mysql更改数据存储路径

数据库|mysql教程

Linux,Mysql,更改,数据,存储,路径,MYSQL,

数据库-mysql教程

淘宝客 源码 下载,ubuntu取消清华源,小程序爬虫登录,php代码,seo指数1688lzw

MYSQL默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/home/data下需要进行下面几步: 1、home目录下建立data目录 cd /homemkdir data 2、把MySQL服务进程停掉: mysqladmin -u root -p shutdown 3、把/var/lib/mysql整个目录移到/home/data mv /

web开发实例源码,vscode 提交码云,Ubuntu开启触控板,tomcat 数据被篡改,busjav爬虫,php to cny,沈阳seo引擎优化服务,html5网站动画背景,ebay免费模板下载lzw

人才网源码采集规则,次硬盘装ubuntu,tomcat服务器多链接,电脑能开几个爬虫,php评论怎么做页面,seo教程骗局lzw

MYSQL默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/home/data下需要进行下面几步:

1、home目录下建立data目录

cd /homemkdir data

2、把MySQL服务进程停掉:

mysqladmin -u root -p shutdown

3、把/var/lib/mysql整个目录移到/home/data

mv /var/lib/mysql/home/data/

这样就把MySQL的数据文件移动到了/home/data/mysql下

4、找到f配置文件

如果/etc/目录下没有f配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为f)中。命令如下:

[root@test1 mysql]# cp /usr/share/mysql/my-f/etc/f

5、编辑MySQL的配置文件/etc/f

为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。修改socket=/var/lib/mysql/mysql.sock一行中等号右边的值为:/home/mysql/mysql.sock 。操作如下:

vi f (用vi工具编辑f文件,找到下列数据修改之)# The MySQL server[mysqld] port= 3306#socket = /var/lib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行)socket = /home/data/mysql/mysql.sock(加上此行)

6、修改MySQL启动脚本/etc/init.d/mysql

最后,需要修改MySQL启动脚本/etc/init.d/mysqld,把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存放路径:home/data/mysql。

[root@test1 etc]# vi/etc/init.d/mysql#datadir=/var/lib/mysql(注释此行)datadir=/home/data/mysql (加上此行)

如果是CentOS还要改 /usr/bin/mysqld_safe 相关文件位置;

最后 做一个mysql.sock 链接:

in -s /home/data/mysql/mysql.sock /var/lib/mysql/mysql.sock

7、重新启动MySQL服务

/etc/init.d/mysqldstart

或用reboot命令重启Linux

如果工作正常移动就成功了,否则对照前面的7步再检查一下。还要注意目录的属主和权限。

复制内容到剪贴板

代码:

[root@sample ~]# chown -R mysql:mysql /home/data/mysql/ ← 改变数据库的归属为mysql

[root@sample ~]# chmod 700 /home/data/mysql/test/ ← 改变数据库目录属性为700

[root@sample ~]# chmod 660 /home/data/mysql/test/* ← 改变数据库中数据的属性为660

错误解决方案:

1.在CentOS上,如果mysql是通过yum安装的,那么可能使用上面的方法不能完全凑效。

原因:mysql的配置文件有多处,除了更改/etc/f文件之外,还需要更改/usr/lib64/mysql/mysql_config

这个文件里面有一行“ldata=’/var/lib/mysql’”和”socket=/var/lib/mysql/mysql.sock”,这里也需要改掉

2.另外,还有权限问题,查看/var/log/mysqld.log,发现Can’t create test file /xxx/mysql/centos5.lower-test

这里是因为没有权限创建或读取文件。

解决办法就是使用setenforce 0 这个命令,让系统关闭权限校验,然后再运行命令 service mysqld start 发现OK了。

另外一个办法是restorecon -FRv /home/data/mysql,或者chcon -R -t mysqld_db_t /home/data/mysql

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。