CentOS中开启mysql挂载

挂载的作用其实说白了就是备份。防止数据库文件损害或者数据库被误删导致数据丢失。

创建一个文件名为my.cnf内容如下

复制代码
# Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA

#
# The MySQL  Server configuration file.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

[mysqld]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
datadir         = /var/lib/mysql
secure-file-priv= NULL
default_authentication_plugin=mysql_native_password

# Custom config should go here
!includedir /etc/mysql/conf.d/

server-id=200

如果已经安装了mysql需要对mysql容器进行卸载。

卸载后在自己准备保存挂载数据的地方创建目录结构如下,并将my.cnf放置到conf文件夹中

创建好之后重安装mysql的容器

创建一个名为mysql的容器,并且配置相关信息。把自己的目录位置替换到下面的我的目录位置中

复制代码
docker run -it \
--name mysql \
-p 3306:3306 \
--privileged \
-e MYSQL_ROOT_PASSWORD=123 \
-v /etc/localtime:/etc/localtime \
-v /usr/local/software/mysql/3306/conf/my.cnf:/etc/mysql/my.cnf \
-v /usr/local/software/mysql/3306/data:/var/lib/mysql \
-v /usr/local/software/mysql/3306/mysql-files:/var/lib/mysql-files \
-d mysql

创建成功后log一下,发现已经成功了。

还要确认是否挂载成功。

开启mysql服务后

使用windows里的navicat连接到CentOS里的数据库。上篇文章有写如何连接的。

CentOS使用docker安装mysql并使用navicat 远程链接-CSDN博客

并且创建数据库和表

创建完成后在CentOS中进行访问

访问成功而且有数据

这时候打开自己之前创建用于保存挂载数据的位置查看是否有新建的库和表的信息

打开后发现已经自动开启挂载了。有库和表的备份信息了。

相关推荐
Lsir10110_6 小时前
【Linux】中断 —— 操作系统的运行基石
linux·运维·嵌入式硬件
醇氧6 小时前
【docker】mysql 8 的健康检查(Health Check)
mysql·docker·容器
Sheffield6 小时前
command和shell模块到底区别在哪?
linux·云计算·ansible
历程里程碑6 小时前
Linux20 : IO
linux·c语言·开发语言·数据结构·c++·算法
郝学胜-神的一滴6 小时前
深入浅出:使用Linux系统函数构建高性能TCP服务器
linux·服务器·开发语言·网络·c++·tcp/ip·程序人生
承渊政道6 小时前
Linux系统学习【Linux系统的进度条实现、版本控制器git和调试器gdb介绍】
linux·开发语言·笔记·git·学习·gitee
技术路上的探险家6 小时前
Ubuntu下Docker与NVIDIA Container Toolkit完整安装教程(含国内源适配)
linux·ubuntu·docker
lekami_兰7 小时前
MySQL 长事务:藏在业务里的性能 “隐形杀手”
数据库·mysql·go·长事务
代码AC不AC7 小时前
【Linux】深入理解缓冲区
linux·缓冲区·标准错误
Doro再努力7 小时前
【Linux操作系统12】Git版本控制与GDB调试:从入门到实践
linux·运维·服务器·git·vim