CentOS更改MySQL存储目录位置实例教程

mysql默认的数据文件存储目录为/var/lib/mysql

假如要把目录移到/home/mysqldata下需要进行下面几步:

1、home目录下建立mysqldata目录

 代码如下 复制代码

cd /home
mkdir mysqldata

2、停止mysql进程

 代码如下 复制代码

mysql -u root -p shutdown

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

 代码如下 复制代码

mv /var/lib/mysql /home/mysqldata/

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

4、找到my.cnf配置文件
如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/找到my-medium*.cnf文件,拷贝到/etc/并改名为my.cnf
命令如下:

 代码如下 复制代码

[root@lxy mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

5、编辑/etc/my.cnf
为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。修改socket=/var/lib/mysql/mysql.sock

 代码如下 复制代码

socket=/home/mysqldata/mysql/mysql.sock

操作如下:

 代码如下 复制代码

vi   my.cnf  (用vi工具编辑my.cnf文件,找到下列数据修改之)

# The MySQL server[mysqld] 
port = 3306
#socket  = /var/lib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行)
socket  = /home/mysqldata/mysql/mysql.sock (加上此行)

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

把其中datadir=/var/lib/mysql一行中修改成现在的实际存放路径:home/mysqldata/mysql

 代码如下 复制代码

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

最后做一个mysql.sock 链接:

 代码如下 复制代码

ln -s /home/mysqldata/mysql/mysql.sock /var/lib/mysql/mysql.sock(需要从/home/mysqldata/mysql下复制一份过来)

7、重新启动MySQL服务

 代码如下 复制代码
/etc/init.d/mysqld start

或用reboot命令重启Linux
如果工作正常移动就成功了,否则对照前面的7步再检查一下。

8、最后修改下数据库的权限

 代码如下 复制代码

[root@localhost ~]# chown -R mysql:mysql /home/mysqldata/mysql/  ← 改变数据库的归属为mysql
[root@localhost ~]# chmod 700 /home/mysqldata/mysql/test/  ← 改变数据库目录属性为700
[root@localhost ~]# chmod 660 /home/mysqldata/mysql/test/*  ← 改变数据库中数据的属性为660

9、全部搞定!

时间: 2024-08-26 18:30:51

CentOS更改MySQL存储目录位置实例教程的相关文章

CentOS Linux更改MySQL数据库目录位置

由于MySQL的数据库太大,默认安装的/var盘已经再也无法容纳新增加的数据,没有办法,只能想办法转移数据的目录.下面我整理一下把MySQL从/var/lib/mysql目录下面转移到/home/mysql_data/mysql目录的具体操作: 1.首先我们需要关闭MySQL,命令如下:    service mysqld stop 2.然后是转移数据,为了安全期间,我们采用复制命令cp,先找到mysql的原目录    cd /var/lib    ls    运行这个命令之后就会看到mysql

CentOS Linux更改MySQL数据库目录位置具体操作_Mysql

引言: 由于MySQL的数据库太大,默认安装的/var盘已经再也无法容纳新增加的数据,没有办法,只能想办法转移数据的目录. 下面我整理一下把MySQL从/var/lib/mysql目录下面转移到/home/mysql_data/mysql目录的具体操作:  1.首先我们需要关闭MySQL,命令如下: service mysqld stop 2.然后是转移数据,为了安全期间,我们采用复制命令cp,先找到mysql的原目录 cd /var/lib ls 运行这个命令之后就会看到mysql的目录了,然

CentOS中如何更改MySQL数据库目录的位置

由于MySQL的数据库太大,默认安装的/var盘已经再也无法容纳新增加的数据,没有办法,只能想办法转移数据的目录. 下面我简单整理一下这几天把MySQL从/var/lib/mysql目录下面转移到/home/mysql_data/mysql下面具体操作 1.首先我们需要关闭MySQL,命令如下: &http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;  service mysqld stop 2.然后是转移数据,为了安全

Mysql存储java对象实例详解_java

Mysql存储java对象 MySQL  设置字段为 blob 保存对象,先将对象序列化为byte[]  使用 setObject(byte[] bytes) ByteArrayOutputStream baos = new ByteArrayOutputStream(); ObjectOutputStream out = null; try { out = new ObjectOutputStream(baos); out.writeObject(java实例对象); } catch (IOE

CentOS下nginx+php-fpm+mysql主机分离环境实例教程

实验系统:CentOS 6.6_x86_64 实验前提:大部分软件使用编译安装,请提前准备好编译环境,防火墙和selinux都关闭 实验软件:nginx-1.9.3 mariadb-10.0.20 php-5.6.11 memcache-2.2.7 xcache-3.2.0 实验拓扑: 一.安装nginx 1.解决依赖关系: 需要专门安装pcre-devel包: yum -y install pcre-devel 2.添加nginx用户: useradd -r nginx 3.解压并编译安装ng

如何更改mysql数据库目录的保存位置

独立主机的数据库目录一般是:/var/lib/mysql 可以使用命令查看位置 我们可以修改吗?当然可以,只要修改一下配置文件中的sock位置,指定data目录,然后重启一下mysql即可. Vi /etc/my.cnf Vi /etc/init.d/mysql 然后重启mysql,便可以看到data目录已经到指定位置了. 查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/database/MySQL/

linux下修改mysql数据库存储目录位置

1.设置新的存放路径 mkdir -p /data/mysql 2.复制原有数据 cp -R /var/lib/mysql/* /data/mysql 3.修改权限 chown -R mysql:mysql /data/mysql 4.修改配置文件 vim /etc/mysql/my.cnf datadir = /data/mysql 5.修改启动文件 vim /etc/apparmor.d/usr.sbin.mysqld #把 /var/lib/mysql r, /var/lib/mysql/

MySQL数据导入导出实例教程手册

mysqldump是mysql自带的一个数据导入导出工具,其官方注释为: shell> mysqldump [options] db_name [tbl_name ...] shell> mysqldump [options] –databases db_name - shell> mysqldump [options] –all-databases 使用mysqldump命令将整个数据库导出  代码如下 复制代码 mysqldump -h 127.0.0.1 -P 3306 -u ro

MySQL 创建存储过程详细实例教程(1/9)

mysql教程 创建存储过程 "pr_add" 是个简单的 mysql 存储过程,这个存储过程有两个 int 类型的输入参数 "a"."b",返回这两个参数的和. drop procedure if exists pr_add; -- 计算两个数之和 create procedure pr_add (    a int,    b int ) begin    declare c int;    if a is null then       s