文档章节

linux 更改mysql 数据存储目录

ossea
 ossea
发布于 2017/09/04 11:12
字数 721
阅读 18
收藏 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-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
更改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
linux mysql 更改MySQL数据库目录位置

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

zmf
2014/09/10
0
0
linux下jira的安装与配置

一、所需环境与准备。 OS:CentOS 6.5 JDK:Java 1.8 数据库:mysql 5.6 JIRA software :7.10.1 所需安装包见附件。 二、安装JDK 1.8 1、切换至root用户。 2、在usr目录下创建java 3、将jdk...

lel3390
06/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

7 个致命的 Linux 命令

导读 如果你是一个 Linux 新手,在好奇心的驱使下,可能会去尝试从各个渠道获得的命令。以下是 7 个致命的 Linux 命令,轻则使你的数据造成丢失,重则使你的系统造成瘫痪,所以,你应当竭力避...

问题终结者
今天
0
0
设计模式:工厂方法模式(工厂模式)

工厂方法模式才是真正的工厂模式,前面讲到的静态工厂模式实际上不能说是一种真正意义上的设计模式,只是一种变成习惯。 工厂方法的类图: 这里面涉及到四个种类: 1、抽象产品: Product 2、...

京一
今天
0
0
区块链和数据库,技术到底有何区别?

关于数据库和区块链,总会有很多的困惑。区块链其实是一种数据库,因为他是数字账本,并且在区块的数据结构上存储信息。数据库中存储信息的结构被称为表格。但是,区块链是数据库,数据库可不...

HiBlock
今天
0
0
react native 开发碰到的问题

react-navigation v2 问题 问题: static navigationOptions = ({navigation, navigationOptions}) => ({ headerTitle: ( <Text style={{color:"#fff"}}>我的</Text> ), headerRight: ( <View......

罗培海
今天
0
0
Mac Docker安装流程

久仰Docker大名已久,于是今天趁着有空,尝试了一下Docker 先是从docker的官网上下载下来mac版本的docker安装包,安装很简易,就直接拖图标就好了。 https://www.docker.com/products/docker...

writeademo
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部