阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

大神解说Centos7.3修改mariadb数据库存储路径

33次阅读
没有评论

共计 1418 个字符,预计需要花费 4 分钟才能阅读完成。

导读 有的 lnmp 环境包或 yum 安装方式默认将 mariadb 数据库装在系统盘,其中就包括数据存储文件,万一系统宕机无法启动,那么数据文件就有损坏的可能,甚至造成无法挽回的局面。接下来我们就可以单独将数据存储文件放在其他分区或数据盘,这样即便是系统挂掉,也能轻易快速恢复 mariadb 数据库的正常运行。

大神解说 Centos7.3 修改 mariadb 数据库存储路径

如果你不知道当前数据库路径,只需要输入以下命令即可查看到:

回车后输入您的 mariadb 密码后回车

# mysql -uroot -p

输以下命令显示各种 mariadb 的路径调用情况。其中 datadir 项就是现存储的路径。

MariaDB [(none)]> show variables like‘%dir%’;

退出数据库登录状态

MariaDB [(none)]> exit;

停止数据库

# systemctl stop mysql.server

新建 mariadb 新存储的路径文件夹

# mkdir -p /home/mysql/data

进入 home 目录

# cd /home

给新的路径文件夹 mysql 用户权限

# chown -R mysql:mysql /mysql

修改下面启动脚本 mysql 文件中的 datadir 路径,mysql 启动脚本路径不一样,也有可能会在 /usr/lib/systemd/system 目录下(centos7)

# vi /etc/init.d/mysql

找到 datadir=/var/lib/mysql 修改成 datadir=/home/mysql/data,如果有相同的 /var/lib/mysql 路径,同样修改为 /home/mysql/data,

例如:

“innodb_data_home_dir”和“innodb_log_group_home_dir“

修改后保存并退出,在修改 my.cnf 中的数据存储路径

修改 my.cnf 文件中 datadir= 路径和上面修改的方法一样,修改还好以后保存并退出,然后启动 mariadb 服务。

# vi /etc/my.cnf

# systemctl start mysql.server

注意:如果你有数据文件,那么就把你的贝到 /home/mysql/data 下,还有 /var/lib/mysql 下的 mysql 件夹也拷贝过去,其他文件就不要拷贝了,这样你新建的用户和密码都会是你以前的。如果拷贝所有文件,就会启动报错。

如果以上方式不能成功且启动报错,可以在重启失败后执行初始化数据库命令,执行数据库命令前,/home/mysql/data 下必须是空的,初始化成功后再导入数据库,以下是初始化数据库的命令:

# /usr/local/mysql/scripts/mysql_install_db –user=mysql –basedir=/usr/local/mysql –datadir=/home/mysql/data

再次启动就正常了

# systemctl restart mysql.server

初始化成功后,数据库密码是空的,执行以下命令开始设置密码

# /usr/local/mysql/bin/mysql_secure_installation

注意:第一个是提示你输入 mysql 密码,其实新安装的 mysql 默认是空密码,然后直接回车输入两次新密码回车,接下来全部按 Y 即可(基本上是删除了 test 测试数据库和匿名账号和删除后立刻生效(最后一个 Y))。

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-24发表,共计1418字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中