文档章节

linux 更改mysql 数据存储目录

ossea
 ossea
发布于 2017/09/04 11:12
字数 721
阅读 28
收藏 0

一般存储在/var/lib/mysql下

1.查看mysql当前的数据存储位置

[root@dlzx ~]# mysqladmin -u root -p variables |grep datadir
Enter password:
| datadir                                           | /usr/local/mysql/data/                                                                                                 |
[root@dlzx ~]#

 

2.关闭mysql服务

[root@dlzx ~]# service mysqld stop
Shutting down MySQL. SUCCESS!
[root@dlzx ~]#

 

3.创建新的存储目录  如果已经有了 直接跳过

这里的 /mnt/sdc为之前博文中的新加挂载硬盘

[root@dlzx ~]# cd /mnt
[root@dlzx mnt]# cd sdc/
[root@dlzx sdc]# mkdir mysqldata
[root@dlzx sdc]#

 

4.把以前的mysql数据存储文件移动到新的目录

[root@dlzx sdc]# mv /usr/local/mysql/data /mnt/sdc/mysqldata/
[root@dlzx sdc]#

 

5.修改my.cnf

注:并不是所有版本都包含有my.cnf这个配置文件,如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf中。可以删除内容自定义里面你需要的参数配置

修改白色字体的两个对应的地址  对应你要转移mysqldata文件目录

# Uncomment the following if you are using InnoDB tables
#innodb_data_home_dir = /usr/local/mysql/data
innodb_data_home_dir = /mnt/sdc/mysqldata
#innodb_data_file_path = ibdata1:10M:autoextend
#innodb_log_group_home_dir = /usr/local/mysql/data
innodb_log_group_home_dir = /mnt/sdc/mysqldata

还有一个

[mysqld]
port            = 3306
socket          = /tmp/mysql.sock
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
character-set-server=utf8
max_connections=1000
datadir = /mnt/sdc/mysqldata

需要指定 datadir = /mnt/sdc/mysqldata

 

重启后完成mysql数据存储目录移动变更

问题:

1. 没有找到网上说的.socket文件  以前的my.cnf 中是默认的路径tmp 下 这个路径应该是mysql的启动的时候自动生成的

2. 重新启动mysq  会报一个这样的错误

Starting MySQL.. ERROR! The server quit without updating PID file (/usr/local/mysql/data/dlzx.pid).
具体问题可以看日志

在my.cnf中添加日志记录
[mysqld_safe]

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

日志内容

170904 10:21:49 [Note] Plugin 'FEDERATED' is disabled.
/usr/local/mysql/bin/mysqld: Table 'mysql.plugin' doesn't exist
170904 10:21:49 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
170904 10:21:49 InnoDB: The InnoDB memory heap is disabled
170904 10:21:49 InnoDB: Mutexes and rw_locks use GCC atomic builtins
170904 10:21:49 InnoDB: Compressed tables use zlib 1.2.3
170904 10:21:49 InnoDB: Using Linux native AIO
170904 10:21:49 InnoDB: Initializing buffer pool, size = 128.0M
170904 10:21:49 InnoDB: Completed initialization of buffer pool
170904 10:21:49 InnoDB: highest supported file format is Barracuda.
InnoDB: Log scan progressed past the checkpoint lsn 49439
170904 10:21:49  InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
InnoDB: Doing recovery: scanned up to log sequence number 1595675
170904 10:21:49  InnoDB: Starting an apply batch of log records to the database...

 

第一个error 提示没找到表

我之前更改了我linux的 hostname 也许和这个有关系

我尝试恢复表数据及权限

进入mysql安装目录

执行初始化数据库

scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

重启成功

[root@dlzx mysql]# seriver mysqld start
-bash: seriver: command not found
[root@dlzx mysql]# service mysqld start
Starting MySQL.. SUCCESS!
[root@dlzx mysql]#

 

 

 

 

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
ossea
粉丝 1
博文 21
码字总数 13942
作品 0
大连
程序员
私信 提问
mysql 数据导入及格式的问题?

今天学习MySQL的时候下载了一个employees_db-full-1.0.6.tar.bz2这个示例数据库,我的系统是Linux,MySQL版本是5.1.69,所以数据库默认存储引擎是MyIsam,但是导入数据库后在数据目录下只有....

saidmu
2013/08/05
787
3
Ubuntu上更改MySQL数据库数据存储目录

原文出处:潇湘隐者 之前写过一篇博客“MySQL更改数据库数据存储目录”,当时的测试环境是RHEL和CentOS,谁想最近在Ubuntu下面更改MySQL数据库数据存储目录时遇到了之前未遇到的问题,之前的...

潇湘隐者
11/18
0
0
更改MySQL目录[linux]

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

LiShixi
2011/07/02
0
0
编译安装MySQL-5.5.28

安装环境: 系统:Red Hat Enterprise Linux Server release 6.5 内核:2.6.32-431.el6.x86_64 MySQL:mysql-5.5.28.tar.gz cmake:cmake-2.8.10.2.tar.gz 步骤: 一、安装cmake:mysql5.5版本......

9uhome
06/26
0
0
linux 安装mysql的默认目录

MySQL安装完成后不象SQL Server默认安装在一个目录,它的数据库文件、配置文件和命令文件分别在不同的目录,了解这些目录非常重要,尤其对于Linux的初学者,因为 Linux本身的目录结构就比较复...

saulc
06/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周一乱弹 —— 温柔的人应该这样

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @clouddyy :#每日一歌# 《フィクション-sumika》 《フィクション-sumika》 手机党少年们想听歌,请使劲儿戳(这里) 假期时间干嘛去, @for...

小小编辑
49分钟前
17
5
[LintCode] Serialize and Deserialize Binary Tree(二叉树的序列化和反序列化)

描述 设计一个算法,并编写代码来序列化和反序列化二叉树。将树写入一个文件被称为“序列化”,读取文件后重建同样的二叉树被称为“反序列化”。 如何反序列化或序列化二叉树是没有限制的,你...

honeymose
今天
6
0
java框架学习日志-7(静态代理和JDK代理)

静态代理 我们平时去餐厅吃饭,不是直接告诉厨师做什么菜的,而是先告诉服务员点什么菜,然后由服务员传到给厨师,相当于服务员是厨师的代理,我们通过代理让厨师炒菜,这就是代理模式。代理...

白话
今天
29
0
Flink Window

1.Flink窗口 Window Assigner分配器。 窗口可以是时间驱动的(Time Window,例如:每30秒钟),也可以是数据驱动的(Count Window,例如:每一百个元素)。 一种经典的窗口分类可以分成: 翻...

满小茂
今天
19
0
my.ini

1

architect刘源源
今天
16
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部