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)
1、在mysql安装完成后,要修改数据库存储的位置,比如从安装目录下的E:\Program Files (x86)\MySQL\data文件夹转移到D:\mydata文件夹。
2、在D:\下新建mydata文件夹
3、cmd进入dos窗口,输入net stop mysql停止MySQL服务,将C:\ProgramData\MySQL\MySQL Server 5.5\data(其中ProgramData为隐藏文件夹)下的文件夹和文件一起拷贝到D:\mydata文件夹下
4、在安装目录下找到my.ini文件,找到:
#Path to the database root
datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"
将datadir的值更改为datadir="D:/mydata/"
5、保存后,cmd进入dos窗口,输入net start mysql重新启动mySQL服务即可。
具体操作:
一、停止MySQL
开始-cmd
net stop mysql5
二、复制原来数据库目录到新目录
1、复制C:\ProgramData\MySQL\MySQL Server 5.5\中的data目录到
D:\Program Files\MySQL\MySQL Server 5.5\目录下(自建的目录)
三,修改MySQL配置文件
1、用记事本打开C:\ProgramData\MySQL\MySQL Server 5.5\data\目录下的my.ini
找到datadir="C:\ProgramData\MySQL\MySQL Server 5.5\data"
在前面加#注释掉
在下面添加一行
datadir="D:\Program Files\MySQL\MySQL Server 5.5\data"
修改完成后,保存退出。
四、重新启动MySQL
1、开始-cmd
net start mysql5
2、进入MySQL控制台
开始-所有程序-MySQL-MySQL Server 5.5-MySQL 5.5 Command Line Client
提示输入MySQL root账号的密码,输入之后回车,进入MySQL控制台
show variables like ’%datadir%’; #查询MySQL数据库存放目录
如查询显示为D:\Program Files\MySQL\MySQL Server 5.5\data\即表示修改成功!
可用data下的数据文件备份还原数据库
假如要把目录移到/home/data下需要进行下面几步:
1、home目录下建立data目录
cd /home
mkdir 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、找到my.cnf配置文件
如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下:
[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
5、编辑MySQL的配置文件/etc/my.cnf
为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。修改socket=/var/lib/mysql/mysql.sock一行中等号右边的值为:/home/mysql/mysql.sock 。操作如下:
vi my.cnf (用vi工具编辑my.cnf文件,找到下列数据修改之)
# 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/mysql,把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存放路径:home/data/mysql。
[root@test1 etc]# vi /etc/init.d/mysql
#datadir=/var/lib/mysql(注释此行)
datadir=/home/data/mysql (加上此行)
7、重新启动MySQL服务
/etc/init.d/mysql start
或用reboot命令重启Linux
如果工作正常移动就成功了,否则对照前面的7步再检查一下。还要注意目录的属主和权限。
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重新启动服务
查询数据库位置,查看是否成功