柠檬 发表于 2019-9-6 03:19:38

MYSQL数据库迁移+挂载硬盘教程

本帖最后由 柠檬 于 2022-3-13 20:03 编辑

今天给大家录制一个 数据库满了 连接不上 + 挂载硬盘 +数据库迁移的视频


我这有个服务器就是磁盘满了。。大家开始看我操作吧
---------------------------------------------------------
首先 输入
df -lh 看看磁盘如何
/dev/sda3      16G   15G   0 100% /
看一看到 是一点空间都没,mysql也是启动不了的 mysqld 已停
好,接下来进去 winscp看看
这破J8网速
好 进去了,我们先看看 有没有什么能删除的东西来让mysql可以启动

检查了,发现log文件都是很小,这下咋办呢
我刚才检查了 可以把gs的libgs——32.pak 删除掉
只留一个 因为我发现其他文件夹的都一样
先删除掉3个 看看能不能运行 提示有61M可以用了

mysqld (pid2693) 正在运行...
删除几个lib之后 就运行成功了,现在进行导出数据库,
不过在这 我们首先清空ldb和adb的2个表。

这服务器可是真J8慢

做一次清空ldb库,我通常都是直接删除ldb数据库的。。。。

我们先做挂载硬盘吧。。。
---------------------------------------------------

fdisk -l

Disk /dev/sdb: 118.1 GB,
有120gb的没挂载 我们挂载去。
进行分区:
首先是输入 n然后p 然后1 然后3次确定回车 最后w 在回车 分区完毕

fdisk /dev/sdb
现在进行格式化
这里可能会出现vdb啊 xvdb 都没所谓 自己改就OK
mkfs -t ext3 /dev/sdb1这里默认分区完毕是多了个1的。。

好 格式化完毕
现在线创建一个文件夹
mkdir /storage
然后把格式化完毕的 挂载到这里
mount /dev/sdb1 /storage
然后在输入这个命令 让他开机启动也进行挂载
vi /etc/fstab
如果你不会做VI模式操作的话 你可以自己百度一下
/dev/sdb1 /storage ext3 defaults 1 2
好 这就完成了挂载了
df- lh看看
/dev/sdb1       109G188M103G   1% /storage
多了一个这个了,现在可以做备份了

adb的也做一下清空。。

好了 现在可以安心做备份导出了
---------------------------------------
首先 我们先写好命令

mysqldump -h127.0.0.1 -uroot -p654321 dl_adb_all > /storage/adb.sql
备份命令 总共有用的数据库是6个
mysqldump -h127.0.0.1 -uroot -p654321 dl_adb_all > /storage/adb.sql
mysqldump -h127.0.0.1 -uroot -p654321 dl_tdb_1 >/storage/tdb.sql
mysqldump -h127.0.0.1 -uroot -p654321 dl_ddb_1 >/storage/ddb.sql
mysqldump -h127.0.0.1 -uroot -p654321 dl_dmdb_1 >/storage/dmdb.sql
mysqldump -h127.0.0.1 -uroot -p654321 dl_mdb_1 >/storage/mdb.sql
mysqldump -h127.0.0.1 -uroot -p654321 dl_ldb_1 >/storage/ldb.sql



Access denied for user 'root'@'localhost' (using password: YES) when trying to connect
这里提示密码错误,其实密码并没提示错误,只能说架设的那个导入的数据库本身的密码就不一样
所以这就是架设的硬技术 不过也没关系,
我们自己修改
打开/etc/my.cnf

skip-grant-tables
家一行 然后重启mysql
service mysqld restart

之后 mysql -u root
use mysql;
update user set password=password("654321") where user="root"; 这里改成你自己的密码 记得双引号要在
FLUSH PRIVILEGES;
exit;
好 接着把my.cnf去掉那行skip的 然后在重启mysql
再次输入导出命令

mysqldump: Error 2013: Lost connection to MySQL server during query when dumping table `data` at row: 3897
出现这种情况 可以试一试加一行代码,如果还是不行 那么就是凉了 这个ddb
好 还是无果 凉了
localhost直接拒绝,这是我遇到第二个客户 是导ddb出错的。
我们在试一试家一行代码 最大封包,还是无果
那么就不能做导出数据库了,只能直接做数据库转移,
下面看我操作。


首先创建数据库文件夹在新的空间上

mkdir /storage/mysql
chown mysql:mysql /storage/mysql

mv /var/lib/mysql/* /storage/mysql/

然后就是一个漫长的等待过程,10多G的应该5分钟左右吧。。
漫长的等待。。好 当他再次出现#号 就是迁移完毕了。
停止mysql 修改my.cnf

改了路径 现在启动看看
启动失败 多数是因为selinux的问题
我们现在看看selinux的状态
SELINUX=enforcing

我们要修改为SELINUX=disabled
然后重新启动机器 reboot
在这里在打一下广告啊 数据库疑难杂症 etc还有收徒 QQ 369398478
嘿嘿嘿
这服务器重启还真久
好了
看看mysql启动了吗 启动成功

然后登录看看
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
出现这个错误
我们输入下面的代码
ln -s /storage/mysql/mysql.sock /var/lib/mysql/mysql.sock
在登录看看
好 登录成功。这就完成了mysql的迁移 我们看看空间
/dev/sda3      16G1.6G   14G11% /
成功,
到了 由于这个服务器的ddb凉了 所以无法为你们做一次导出数据库 然后重装mysql
然后给你们详细说明要注意点什么

这个可以理解为 数据库满了 买了新硬盘 如何做的教程
教程到此为此了 欢迎加QQ369398478Q群 92727372 不明请问 不过有时候是要收费的哦!
再见


1、yum remove mysql mysql-server mysql-libs compat-mysql51

2、rm -rf /var/lib/mysql

**** Hidden Message *****

qusi1nide4t 发表于 2019-9-6 03:29:17

我了个去,顶了

1yuqunchenggong 发表于 2019-9-7 14:10:47

发发呆,回回帖,工作结束~

gfdhj 发表于 2019-9-7 18:42:54

好,很好,非常好!

mhikak 发表于 2019-9-7 23:33:48

我也来顶一下..

lengweijun 发表于 2019-9-8 11:05:23

我也来顶一下..

◇逍遥◆MIR2◇ 发表于 2019-9-9 10:44:28

楼下的接上。。。。

912666345 发表于 2019-9-11 00:16:49

顶顶更健康

ranyi170 发表于 2019-9-11 22:51:18

围观 围观 沙发在哪里!!!

chen1381861 发表于 2019-9-12 19:03:17

好,很好,非常好!
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: MYSQL数据库迁移+挂载硬盘教程