Centos7.3,mysql5.7环境,数据存储空间加大调整方案。

Centos7.3

Mysql 5.7

分区信息如下

df -h

Filesystem          Size   Used   Avail Use% Mounted on
/dev/mapper/cl_gr61-root   50G    6.6G   44G  14%    /
devtmpfs           3.9G   0     3.9G  0%   /dev
tmpfs             3.9G   0     3.9G  0%   /dev/shm
tmpfs             3.9G   8.3M   3.9G  1%   /run
tmpfs             3.9G   0     3.9G  0%   /sys/fs/cgroup
/dev/sda2           1014M   157M   858M  16%   /boot
/dev/sda1           200M   9.5M   191M  5%   /boot/efi
/dev/mapper/cl_gr61-home   68G    1.7G   67G   3%   /home
tmpfs             782M   0     782M  0%   /run/user/0

Centos7 默认XFS格式分区

查询mysql配置信息,默认存储地址在/var/lib/mysql

cat /etc/my.cnf
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

方案一,减小(/home)分区空间,加大(/)根分区空间,不适合生产环境。

安装备份工具,备份home分区。

yum install xfsdump
xfsdump -f /home.xfsdump /home
please enter label for this dump session (timeout in 300 sec)
 -> home
please enter label for media in drive 0 (timeout in 300 sec)
 -> home

将home分区取消挂载,缩减到10G(会破坏数据,一定要备份)。

umount /home
lvreduce -L 10G /dev/cl_gr61/home

扩展root分区

lvextend -l +100%FREE /dev/cl_gr61/root
xfs_growfs /dev/cl_gr61/root

重新格式化home分区为xfs格式,挂载home分区,还原数据。

mkfs.xfs -f /dev/cl_gr61/home
xfsrestore /home.xfsdump /home
mount /home

完成后,分区信息如下

df -h

Filesystem                  Size  Used   Avail Use%    Mounted on
/dev/mapper/cl_gr61-root   108G  9.1G   99G   9%           /
devtmpfs                    3.9G    0  3.9G   0%         /dev
tmpfs                       3.9G    0  3.9G   0%          /dev/shm
tmpfs                       3.9G  8.3M  3.9G   1%         /run
tmpfs                       3.9G    0  3.9G   0%          /sys/fs/cgroup
/dev/sda2                   1014M  174M  841M  18%       /boot
/dev/sda1                   200M  9.5M  191M   5%         /boot/efi
/dev/mapper/cl_gr61-home   10G   1.7G  8.4G  17%          /home
tmpfs                       782M   0   782M   0%           /run/user/0

方案二,虚拟机扩展硬盘或更换大硬盘DD克隆后,扩展lvm分区,危险,仅做实验。

使用parted工具对磁盘已扩大的sda磁盘进行分区处理

parted /dev/sda

更改显示单位为磁盘扇区,查询磁盘状态,因磁盘大小已变更,如有提示修复分区,请按F回车修复

(parted) unit s
(parted) print free                                                   
Error: The backup GPT table is not at the end of the disk, as it should be.  This might mean that another operating system believes the disk is smaller.  Fix, by moving the backup to the end (and
removing the old backup)?
Fix/Ignore/Cancel?
Warning: Not all of the space available to /dev/sda appears to be used, you can fix the GPT to use all of the space (an extra 41943040 blocks) or continue with the current setting? 
Fix/Ignore?
Number    Start     End       Size     File system  Name             Flags
        34s      2047s     2014s     Free Space
 1      2048s     411647s   409600s    fat16      EFI System Partition   boot
 2      411648s    2508799s   2097152s   xfs
 3      2508800s   266336255s  263827456s                          lvm
        266336256s  629145566s  362809311s  Free Space

删除lvm分区3,将剩余空间一起重新分区,此操作可能会损失所有数据,注意4K对齐。

(parted) rm 3
(parted) mkpart 
Partition name? [] #分区名,无就直接回车。
File system type? [ext2] #文件分区类型,请勿填写,不然有可能格式化丢数据,直接回车。
Start? 508800s #原lvm分区开始扇区。
End?  629143551s #磁盘结束扇区。
Flags? lvm #磁盘标识,填写lvm回车。——如果没有,请使用set命令更改flags(set NUMBER FLAG STATE)
Error: Partition(s) 3 on /dev/sda have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use.  As a result, the old partition(s) will remain in
use.  You should reboot now before making further changes.
Ignore/Cancel? I # /dev/sda 分区 3 变更已写入,但未能告知内核,分区可能在使用。因此,旧的分区将保留在
使用。在做其它变更前请重新启动。——这里选择忽略,不要重启系统

查看分区信息并退出parted。

(parted)print free
Number  Start     End         Size   File system  Name             Flags
      34s       2047s       2014s   Free Space
 1    2048s     411647s     409600s   fat16      EFI System Partition  boot
 2    411648s   2508799s    2097152s   xfs
 3    2508800s  629143551s  626634752s                           lvm
           629143552s  629145566s    2015s            Free Space
 (parted)quit

允许lvm分区sda3进行PE物理块分配,并加10G到/home,剩余空间分配到/root,用xfs_growfs进行xfs文件分区扩展。可额外使用pvs,vgs,lvs查看lvm相关信息。

pvchange -x y /dev/sda3 #允许分配指定物理卷上的PE
lvextend -L +10G /dev/cl_gr61/home #增加10G空间到/home分区
xfs_growfs /dev/cl_gr61/home #扩展/home分区表到新增空间
lvextend -l +100%free /dev/cl_gr61/root #增加剩余的所有空间到/root分区
xfs_growfs /dev/cl_gr61/root #扩展/root分区表到新增空间

完成后,分区信息如下

df -h

Filesystem                Size  Used Avail Use% Mounted on
/dev/mapper/cl_gr61-root  271G  9.1G  262G   4% /
devtmpfs                  3.9G     0  3.9G   0% /dev
tmpfs                     3.9G     0  3.9G   0% /dev/shm
tmpfs                     3.9G  8.3M  3.9G   1% /run
tmpfs                     3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sda2                1014M  174M  841M  18% /boot
/dev/sda1                 200M  9.5M  191M   5% /boot/efi
/dev/mapper/cl_gr61-home   20G  1.7G   19G   9% /home
tmpfs                     782M     0  782M   0% /run/user/0

方案三,增加硬盘作为mysql数据专用盘,将/var/lib/mysql迁移到新硬盘/mysqldata/

创建 LVM 的一般过程:

对磁盘分区(prated) --> 创建物理卷(pvcreate) --> 创建卷组(vgcreate) --> 创建逻辑卷(lvcreate) --> 创建文件系统(mkfs) --> 挂载文件系统(mount) --> 添加到文件系统列表(/etc/fstab)

使用prated工具对新增硬盘进行处理

prarted
(parted) print  all #显示所有硬盘                                                          
Model: Msft Virtual Disk (scsi)
Disk /dev/sdb: 2199GB  #新增的硬盘
Sector size (logical/physical): 512B/4096B
Partition Table: 
Disk Flags: 
(parted) select /dev/sdb #选择要操作的硬盘,一定要再三确认
(parted) mklabel gpt #创建分区表格式为gpt
Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue?
Yes/No? yes
(parted) mkpart
Partition name?  []?                                                      
File system type?  [ext2]?                                                
Start? 0%                                                                 
End? 100%

查看硬盘信息

(parted) print                                                            
Model: Msft Virtual Disk (scsi)
Disk /dev/sdb: 2199GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 
Number  Start   End     Size    File system  Name  Flags
 1      1049kB  2199GB  2199GB

检查4k对齐

(parted) unit s #改变单位为扇区。
(parted) print  #查看4K是否对齐。2048s(开始扇区)*512B(扇区逻辑大小)/4096B(4KB),能整除一般4K就对齐。                
Model: Msft Virtual Disk (scsi)
Disk /dev/sdb: 4294967296s
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 
Number  Start  End          Size         File system  Name  Flags
 1      2048s  4294965247s  4294963200s

设置分区标识为lvm

(parted) unit compact  #改变现实单位为混合(默认的选项)
(parted) set 1  #设置分区1名字为lvm                                                          
Flag to Invert? lvm                                                       
New state?  [on]/off?

创建LVM物理卷

pvcreate /dev/sdb1 #创建LVM物理卷
  Physical volume "/dev/sdb1" successfully created.
pvs
  PV         VG      Fmt  Attr PSize   PFree 
  /dev/sdb1          lvm2 ---    2.00t  2.00t

创建LVM卷组

vgcreate cl_gr61_mysql /dev/sdb1 #创建LVM卷组
  Volume group "mysql" successfully created
vgs
  VG      #PV #LV #SN Attr   VSize   VFree 
  mysql     1   0   0 wz--n-   2.00t  2.00t

创建LVM分区

lvcreate cl_gr61_mysql -l 100%free -n mysql #在lvm卷组cl_gr61_mysql上创建mysql分区
  Logical volume "mysql" created.
lvs
  LV    VG            Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
 mysql cl_gr61_mysql -wi-a-----   2.00t

用xfs格式,格式化分区

mkfs.xfs /dev/cl_gr61_mysql/mysql
meta-data=/dev/cl_gr61_mysql/mysql isize=512    agcount=4, agsize=134217472 blks
         =                       sectsz=4096  attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=536869888, imaxpct=5
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=262143, version=2
         =                       sectsz=4096  sunit=1 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

创建mysql存储目录

mkdir /mysql
mount /dev/mapper/cl_gr61_mysql-mysql /mysql
df -h
Filesystem                       Size  Used Avail Use% Mounted on
/dev/mapper/cl_gr61_mysql-mysql  2.0T   33M  2.0T   1% /mysql
vi /etc/fstab 
/dev/mapper/cl_gr61_mysql-mysql  /mysql          xfs     defaults        0 0

停止mysql服务,复制数据库数据到新目录

systemctl stop mysqld.service 
cp -a -v /var/lib/mysql /mysql

变更mysql配置,修改存储目录地址

vi /etc/my.cnf
datadir = /mysql/mysql/
socket = /mysql/mysql/mysql.sock

启动mysql服务,检查数据是否正常。

systemctl start mysqld.service
时间: 2024-10-14 12:19:56

Centos7.3,mysql5.7环境,数据存储空间加大调整方案。的相关文章

搭建LNMP环境 (centos7+nginx+MySQL5.7.9+PHP7)

搭建阿里云lnmp环境 (centos7+nginx+MySQL5.7.9+PHP7) 阿里云一台服务器出现问题! 我估计是一键安装包环境的原因,所以打算重新搭建下环境! 首先,当然是先做好快照!安全第一! 对系统盘做更换系统操作,装上纯净版的centos. 装好后,进入系统 一.挂载数据盘 df -h 只有系统盘了,挂载上原来的数据盘 fdisk -l 看到数据盘了/dev/vdb1 挂载上这个数据盘, mkdir /data0 mount /dev/vdb1 /data0 然后写入分区: e

centos7和centos6.5环境rpm方式安装mysql5.7和mysql5.6详解

centos7和centos6.5环境rpm方式安装mysql5.7和mysql5.6详解 centos环境安装mysql5.7 其实不建议安装mysql5.7 语法和配置可能和以前的版本区别较大,多坑,慎入 1.yum方式安装(不推荐) a.安装mysql5.7 yum源 centos6: wget dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpmyum localinstall mysql-community-release

源代码编译MYSQL5.6 环境下的MHA+KEEPALIVED的安装和维护

前    言 摘   要 MHA 是当 master 出现故障,挑选一个 slave 作为新的 master 并构建成新的 主从架构的管理工具.从 master 出现故障到构建成新的主从架构时间是 10-30 秒.在 master 出现故障时可能会出现 slave 同步的数据不一致的现象,此工具 可以自动应用差异的中继日志到其他 slave 上保证数据的一致性. 一.Mha 优点 1.M aster crash 时可以快速的进行故障切换. 9-12 秒内可以检测到 master 故障, 7-10

正式环境数据迁移到测试环境及测试环境LAMP搭建

参照正式环境扩展模块来搭建测试环境,否则访问不了 PHP 代码 PDO.PDO_MYSQL.OPENSSL.SSL.CURL等扩展模块 正式环境 Windows Server 2008 R2 X64 Apache+MySQL+PHP+FTP服务 备份MySQL.PHP.APP数据 通过anv软件连接MySQL数据库备份 将 goshop数据库备份,格式为goshop.sql 通过Filezilla软件连接FTP服务,备份PHP及APP数据 正式环境数据备份好后,开始搭建测试环境,将数据上传至测试

搭建centos7+apache+mongodb+php环境

搭建centos7+apache+mongodb+php环境 最近在做一个关于nosql注入的实验,需要搭建数据库是mongodb的数据库网站环境环境.但是本人对mongodb数据库了解甚少,所以在搭建的过程中遇到了很多问题.因为菜,所以学.不知道有没有童靴在搭建环境的时候是不是也遇到了很多问题.这篇文章是在做完实验之后写的,所以当中遇到的问题也没有去找办法截图,所以只是在下面提几个记忆犹新的问题.如果有同学遇到同样的问题,希望可以帮助你解决.不要整天在搭建环境,并且还没有完成(我就是这样,嘲笑

Linux Centos7安装MySQL5.5(二进制方式安装)

Linux Centos7安装MySQL5.5(二进制方式安装)一.在/app目录下下载mysql-5.5.54-linux2.6-x86_64.tar.gz`[[email protected] /]# cd /app[[email protected] app]# wget http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.54-linux2.6-x86_64.tar.gz二.解压mysql-5.5.54-linux2.6-x86_64.ta

sas优化技巧(2),缩减数据存储空间、length、compress、reuse、data步视图

1:控制sas数据存储空间大小 1.1:缩减字符变量存储空间 sas怎么存储字符变量? 对于赋值情况的字符型变量,变量的长度依据第一个值得长度 比如name=yi(那么name的长度即为2),然后再给其赋值name=can,那么只会读入ca 对于datalines读入或从外部数据集中读入的数据,sas默认为字符变量长度为8. 用length语句改变长度,data语句中要出现在变量前才有用. 1.2:缩减数值变量存储空间 sas怎么存储数值变量 sas默认数值变量长度为8 length改变长度,以

centos7.3网络实验环境(金个人)

centos7.3网络实验环境网络拓扑:服务器IP:192.168.10.7客户端IP:192.168.10.8 centos7桌面快捷键:alt+F1  应用程序菜单(即开始菜单)alt+F2  运行程序,如运行gedit.gnome-terminal.firefox.gnome-control-center display等程序Ctrl+Shift+t    打开标签Ctrl+Shift+n   打开终端(独立)F2    重命名F5    刷新,Ctrl+RF9    显示窗口左侧导航栏F

CentOS7.0 安装JAVA环境

CentOS7.0 安装JAVA环境  安装JDK 1.配置JDK环境变量 把下载好的JDK(jdk-7u75-linux-x64.gz)文件上传到 Reg: /home/p2pweb/java/ 目录下(目录可自定义) [[email protected] ~]# tar -zxv -f jdk-7u75-linux-x64.gz // 解压压缩包 [[email protected] ~]# rm -rf jdk-7u75-linux-x64.gz // 删除压缩包 [[email prot