Linux将MySQL数据库目录挂载至新数据盘
对于Linux系统来说,挂载磁盘的方法其实都大同小异,所以本文以CentOS系统为例,介绍下Linux系统磁盘挂载方法,前面大部分内容源于天翼云的论坛。
1.查看磁盘情况
使用命令fdisk -l # 列出全部磁盘信息
[root@qxyw ~]# fdisk -l Disk /dev/xvda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0008a9a5 Device Boot Start End Blocks Id System
/dev/xvda1 1 523 4194304 82 Linux swap / Solaris
Partition 1 does not end on cylinder boundary.
/dev/xvda2 * 523 5222 37747712 83 Linux Disk /dev/xvde: 322.1 GB, 322122547200 bytes
255 heads, 63 sectors/track, 39162 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
2.创建分区
fdisk /dev/xvde # 对xvde硬盘进行分区
n # 创建一个新分区
p # 创建一个主分区(e为扩展分区)
1 # 1表示第一个主分区
回车 # 从第1柱面开始分区
回车 # 表示整个xvde全写入第1分区(若需要将sdb分为多个分区,此时输入+分区大小)
P # 查看下已创建好的分区
w # 保存并退出
[root@qxyw ~]# fdisk /dev/xvde
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x590ca8b1.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable. Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u'). Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-39162, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-39162, default 39162):
Using default value 39162 Command (m for help): p Disk /dev/xvde: 322.1 GB, 322122547200 bytes
255 heads, 63 sectors/track, 39162 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x590ca8b1 Device Boot Start End Blocks Id System
/dev/xvde1 1 39162 314568733+ 83 Linux Command (m for help): w
The partition table has been altered! Calling ioctl() to re-read partition table.
Syncing disks.
3.创建分区文件系统并格式化磁盘
# mkfs.ext4 /dev/xvde1 # 将xvde1以ext4格式进行格式化
[root@qxyw ~]# mkfs.ext4 xvde1
mke2fs 1.41.12 (17-May-2010)
Could not stat xvde1 --- No such file or directory The device apparently does not exist; did you specify it correctly?
[root@qxyw ~]# mkfs.ext4 /dev/xvde1
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
19660800 inodes, 78642183 blocks
3932109 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
2400 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616 Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 25 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
4.在home目录下面创建文件夹mysql,并且将设备挂载至/home/mysql。
[root@qxyw home]# mount /dev/xvde1 /home/mysql
[root@qxyw home]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda2 36G 2.4G 32G 7% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
/dev/xvde1 296G 191M 281G 1% /home/mysql
假如原来文件夹中有文件挂载之后文件会消失并且出现lost+found文件夹,这时不用担心,可以用umount命令进行取消挂载。
原因是这样的。
这个牵扯到linux的VFS(虚拟文件系统)机制。登录以后,你看到的各个目录,文件都是内核在加载时候构造在内存中的VFS目录树,而不是直接看到硬盘上的实际目录树。
按照我对http://www.ibm.com/developerworks/cn/linux/l-vfs/这篇文章所描述的粗浅理解,当你挂载某个设备到一个VFS挂载点上时(比如/home),系统就把VFS中的这个挂载点/home指向你最后所挂载的那个设备上。那么你现在访问该挂载点时,就会看到你最后挂载在此处的设备。而之前所挂载的设备依然在那里,只不过挂载点/home已经不再指向之前的设备。你可以把原来的设备卸载以后挂载到一个新的挂载点上来访问。
5.将磁盘UUID写入fstab
1)通过blkid获得磁盘分区的UUID
[root@qxyw ~]# blkid
/dev/xvda1: UUID="5546dd0c-ef40-451b-b266-df8ef3a49967" TYPE="swap"
/dev/xvda2: UUID="77fc0962-b3cf-400a-8903-0632e077fa09" TYPE="ext3"
/dev/xvde1: UUID="1d17945b-c369-42de-85a8-47217d24d3e5" TYPE="ext4"
2)通过vim /etc/fstab在最后一行添加xvde1的磁盘信息
#
# /etc/fstab
# Created by anaconda on Thu Jan 12 02:47:21 2017
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=77fc0962-b3cf-400a-8903-0632e077fa09 / ext3 defaults 1 1
UUID=5546dd0c-ef40-451b-b266-df8ef3a49967 swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
UUID=d17945b-c369-42de-85a8-47217d24d3e5 /home/mysql ext4 defaults 0 0
6.将/var/lib/mysql/下的内容转移至/home/mysql/,并且在/var/lib/下创建mysql的链接,实际目录其实为/home/mysql
[root@qxyw /]# cd home
[root@qxyw home]# mkdir mysql
[root@qxyw home]# mv /var/lib/mysql/* /home/mysql
[root@qxyw home]# ln /home/mysql /var/lib/mysql
7.验证一下,通过df命令查看磁盘的使用情况。然后进入mysql命令,创建数据库test1...,执行之后会在/home/mysql/文件夹下出现数据库test1,另外使用df命令查看磁盘使用情况。会发现/dev/xvde1使用量在增长。
[root@qxyw mysql]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/xvda2 37155392 2417608 32850400 7% /
tmpfs 4018012 0 4018012 0% /dev/shm
/dev/xvde1 309633052 217092 293687524 1% /home/mysql
Linux将MySQL数据库目录挂载至新数据盘的更多相关文章
- CentOS Linux更改MySQL数据库目录位置具体操作
引言: 由于MySQL的数据库太大,默认安装的/var盘已经再也无法容纳新增加的数据,没有办法,只能想办法转移数据的目录. 下面我整理一下把MySQL从/var/lib/mysql目录下面转移到/ho ...
- CentOS Linux更改MySQL数据库目录位置
引言: 由于MySQL的数据库太大,默认安装的/var盘已经再也无法容纳新增加的数据,没有办法,只能想办法转移数据的目录. 下面我整理一下把MySQL从/var/lib/mysql目录下面转移到/ho ...
- linux mysql 数据库操作导入导出 数据表导出导入
linux mysql 数据库操作导入导出 数据表导出导入 1,数据库导入 mysql -uroot -p show databases; create database newdb; use 数据库 ...
- linux篇--mysql数据库备份并删除前一分钟的数据
linux 中mysql数据库定时备份并删除前一分钟的所有数据 #!/bin/bash #mysqldump -uroot -ppassword01! imaginebase > /home/b ...
- MySQL数据库如何解决大数据量存储问题
利用MySQL数据库如何解决大数据量存储问题? 各位高手您们好,我最近接手公司里一个比较棘手的问题,关于如何利用MySQL存储大数据量的问题,主要是数据库中的两张历史数据表,一张模拟量历史数据和一张开 ...
- Linux下MySQL数据库主从同步配置
说明: 操作系统:CentOS 5.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备 ...
- Linux下MySQL数据库的备份与恢复
Linux下MySQL数据库的备份与恢复 作者:Grey 原文地址: Github 语雀 博客园 基于版本 MySQL5.7 Deepin Linux 15.11 xtrabackup-2.4.18 ...
- mysql数据库存储路径更改 数据文件位置
使用了VPS一段时间之后发现磁盘空间快满了.本人的VPS在购买的时候买了500gb的磁盘,提供商赠送了20GB的高性能系统磁盘.这样系统就有两个磁盘空间了.在初次安装mysql 的时候将数据库目录安装 ...
- linux下mysql数据库的操作
本文主要针对linux下mysql数据库的安装,以及数据库的创建和简单的数据库操作进行说明. ①.Mysql数据库的安装: 数据库的安装分为源码安装和rpm安装. 当然对于老手来说需要进行一些自定义的 ...
随机推荐
- Windows pip
pip 最常用命令(go语言用go get) 显示版本和路径 pip --version 获取帮助 pip --help 升级 pip pip install -U pip 如果这个升级命令出现问题 ...
- Java中的多态方法
public class Main { public void test(Object o) { System.out.println("Object"); } public vo ...
- Transaction And Lock--死锁错误号1205
在TSQL中,如果需要判断当前错误是否是因为死锁引起,可以使用ERROR_NUMBER()=1205来判断在C#中,使用SQLException来捕获 SQLException.Number=1205 ...
- Webserver asp配置及伪静态设置
Webserver IIS asp配置及伪静态设置 一.概述: 在Windows Server 2003系统中,用户可以借助IIS 6.0配置基于ASP.PHP.asp.NET等语言的动态Web网站 ...
- 状压DP学习笔记
有的时候,我们会发现一些问题的状态很难直接用几个数表示,这个时候我们就会用到状压dp啦~~. 状压就是状态压缩,就是讲原本复杂难以描述的状态用一个数或者几个数来表示qwq.状态压缩是一个很常用的技巧, ...
- socket-详细分析No buffer space available(转载)
文章原文出处:http://www.cnblogs.com/hjwublog/p/5114380.html 今天在公司服务器上部署运行的后台程序出现大面积接口无法调用的问题,查看后台控制台打印如下信息 ...
- D. Magic Box(几何)
One day Vasya was going home when he saw a box lying on the road. The box can be represented as a re ...
- linux安装redis 完整步骤
原文连接:https://www.cnblogs.com/lauhp/p/8487029.html 安装: 1.获取redis资源 wget http://download.redis.io/rele ...
- 针对myeclipse6.5无法自动生成toString方法
public void getToStringSTR(){ Field[] fs = this.getClass().getDeclaredFields(); for (int i = 0; i &l ...
- jupyter notebook 的安装及使用
推荐使用Python3 版本 安装pip3 版本 打开终端输入,安装jupyter notebook(ipython4之后命名) pip3 install jupyter notebook 启动jup ...