重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
环境: OS:Red Hat Linux As 5 DB:MySql 5.5 在linux下安装好mysql后,默认的数据文件路径存放在/var/lib/mysql目录下, 下面的步骤说明如将该目录下的数据文件迁移到其他目录. 1.创建数据库目录并将该目录权限属主修改为mysql [root@host1 /]# mkdir -p mysql/data [root@host1 /]# chown -R mysql:mysql ./mysql 2.停止mysql服务 [root@host1 etc]# service mysql stop Shutting down MySQL. [ OK ] 3.修改my.cnf文件修改 在[mysqld]下添加新的数据存放路径 datadir=/mysql/data 4.将默认的数据路径下的所有文件和目录cp到新的目录下 [root@host1 mysql]#cd /var/lib/mysql [root@host1 mysql]#cp -R * /mysql/data/ 这里注意copy过去的目录权限属主需要修改为mysql,这里直接修改 mysql目录即可. [root@host1 mysql]# chown -R mysql:mysql ./mysql 4.启动数据库 [root@host1 mysql]# service mysql start Starting MySQL.... [ OK ] -- The End --
公司主营业务:网站制作、网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联建站是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联建站推出济源免费做网站回馈大家。
1.停止数据库服务:
使用/etc/init.d/mysql
stop
或者
stop
mysql
2.
在目标位置(/data)创建数据库文件的目录(如/mysqldb),并复制(如果不再使用默认的位置,则可以直接mv原先数据库文件到新目录下)原先的数据库文件目录到该目录下:
cd
/data
mkdir
mysqldb
cp
-r
/var/lib/mysql
/data/mysqldb/
经过一段时间的等待后,在/data/mysqldb/下面就有了原先默认的mysql数据库文件目录的拷贝“/mysql”
3.修改my.cnf文件
#
vim
/etc/mysql/my.cnf
将datadir
=
/var/lib/mysql
改为
datadir
=
/data/mysqldb/mysql
另外由于当前my.cnf
中的socket
=
/var/run/mysqld/mysqld.sock(而并非像网上所说的sock
=
/var/lib/mysql/mysql.sock),即socket的位置并不在数据库文件所在的位置,因此可以不做类似网上其他网页所说的,要使用以下的命令做一个mysql.sock
链接:
ln
-s
/data/mysqldb/mysql/mysql.sock
/var/lib/mysql/mysql.sock
(需要从/home/data/mysql下复制一份过来)
4.
修改数据库的权限:
#
chown
-r
mysql:mysql
/data/mysqldb/mysql/
←
改变数据库文件目录的归属为mysql
#
chmod
700
/data/mysqldb/mysql/whois/
←
改变数据库目录whois的属性为700
#
chmod
660
/data/mysqldb/mysql/whois/*
←
改变数据库中数据表的属性为660
5.
修改文件usr.sbin.mysqld
#
vim
/etc/apparmor.d/usr.sbin.mysqld
把
/var/lib/mysql
r,
/var/lib/mysql/**
rwk,
改成
/data/mysqldb/mysql/
r,
/data/mysqldb/mysql/**
rwk,
注意:没有该步骤的话,将导致数据库服务无法重启,好像在重启,但是一直卡住无反应。
6.启动mysql服务器
/etc/init.d/apparmor
restart
/etc/init.d/mysql
restart
(或者使用
restart
mysql)
MySql安装过程中,没有修改掉数据存储位置的话,可能会是数据存储到自己并不希望的位置,故需要修改
先利用命令行登录数据库
mysql -u root -p
查看数据库数据存储位置
show variables like '%datadir%'
去该目录下找到文件夹中的所有文件(该目录一般是隐藏的),将其中所有文件拷贝到你希望数据文件存储的位置,
我是想拷贝到D:/MySQl/data目录下的
打开安装目录下的my.ini文件,将datadir="C:/ProgramData/MySQL/MySQL Server 5.5/data/",这行修改为datadir="D\MySQL\data"(这里用又斜线,否则有可能报错)。
退出所有对mysql.exe的调用,任务管理器看一下服务MySQL有没有停止,如果没有,在cmd中命令net stop mysql停止服务。然后在net start mysql重新启动服务
查询数据库位置,查看是否成功
mysql中修改数据库目录方法:
操作步骤:
1.检查mysql数据库存放目录
mysql
-u
root
-prootadmin
#进入数据库
show
variables
like
'%dir%';
#查看sql存储路径
(查看datadir
那一行所指的路径)
quit;
2.停止mysql服务
service
mysqld
stop
3.创建新的数据库存放目录
mkdir
/data/mysql
4.移动/复制之前存放数据库目录文件,到新的数据库存放目录位置
cp
-R
/usr/local/mysql/data/*
/data/mysql/
#或mv
/usr/local/mysql/data/*
/data/mysql
5.修改mysql数据库目录权限以及配置文件
chown
mysql:mysql
-R
/data/mysql/
vim
/etc/my.cnf
datadir=/data/mysql
(制定为新的数据存放目录)
vim
/etc/init.d/mysqld
datadir=/data/mysql
6.启动数据库服务
service
mysqld
start
说明:根据以上的简单6步操作,已经成功的数据库目录更换路径了。