首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >飞牛 fnos 使用docker部署MySQL数据库教程

飞牛 fnos 使用docker部署MySQL数据库教程

作者头像
季春二九
发布2024-11-13 09:53:51
发布2024-11-13 09:53:51
8.5K2
举报

一、手动部署

1、下载镜像

在fnOS自带镜像仓库搜索:mysql 第一个就是

2024-11-12T07:47:51.png
2024-11-12T07:47:51.png

2、创建文件夹

在你想要的位置创建mysql文件夹,并且在mysql文件夹里面创建data和log文件夹

2024-11-12T07:48:05.png
2024-11-12T07:48:05.png

3、添加容器

打开桌面的docker找到容器,点击右上角的添加容器 容器名称、资源限制任意即可、开机自动开启打钩

2024-11-12T07:48:19.png
2024-11-12T07:48:19.png

4、高级设置:

端口设置:容器端口3306映射到本地3306端口,33060端口可以删可以保留,暂时不用不到

储存位置:分别把前面创建的data和log文件夹分别映射到/var/lib/mysql和/var/log/mysql如下图照抄就行

2024-11-12T07:48:33.png
2024-11-12T07:48:33.png

环境变量:添加3个变量

代码语言:javascript
复制
# root数据库密码变量
MYSQL_ROOT_PASSWORD=as123456
# 字符编码变量
MYSQL_CHARACTER_SET_SERVER=utf8mb4
MYSQL_COLLATION_SERVER=utf8mb4_unicode_ci

按图照抄,把代码复制进去,只有MYSQL_ROOT_PASSWORD后面的asd123456是数据库root的登录密码自己换成你自己的密码

2024-11-12T07:49:00.png
2024-11-12T07:49:00.png

其他都保持默认,设置好下一步创建完成即可 6、创建数据表

找到容器,进入终端

2024-11-12T07:49:24.png
2024-11-12T07:49:24.png

点击/bin/bash连接

2024-11-12T07:49:35.png
2024-11-12T07:49:35.png

依次输入以下命令

进入容器

代码语言:javascript
复制
# 下面代码mysql是容器名称,根据自己创建的名称修改
mysql -u root -p

输入部署的时候设置的root密码

运行以下代码,允许 root 用户将自己拥有的权限授予其他用户

代码语言:javascript
复制
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

刷新权限

代码语言:javascript
复制
# 运行以下命令以确保权限生效:
FLUSH PRIVILEGES;
2024-11-12T07:50:46.png
2024-11-12T07:50:46.png

创建数据表

代码语言:javascript
复制
# 下面代码boke就是数据库名,只有在数据库不存在时才创建 boke数据库,防止重复创建引起错误。
CREATE DATABASE IF NOT EXISTS boke;

**如果今后部署博客填入数据库内 数据库名:boke 用户名:root 密码:就是前面设置的root密码**

二、SSH部署MySQL

连接ssh终端,进入sudo -i 使用以下命令

/vol1/1000/docker/MySQL/data/vol1/1000/docker/MySQL/log换成你自己的路径,其中asd123456换成你自己的root密码

代码语言:javascript
复制
docker run --name mysql-server \
  -d \
  -p 3306:3306 \
  -v /vol1/1000/docker/MySQL/data:/var/lib/mysql \
  -v /vol1/1000/docker/MySQL/log:/var/log/mysql \
  -e MYSQL_ROOT_PASSWORD=asd123456 \
  -e MYSQL_CHARACTER_SET_SERVER=utf8mb4 \
  -e MYSQL_COLLATION_SERVER=utf8mb4_unicode_ci \
  mysql:latest

进入容器

代码语言:javascript
复制
# 下面代码中第一个mysql是容器名称,根据自己创建的名称修改
docker exec -it mysql mysql -u root -p

**输入部署的时候设置的root密码 SSH部署除了进入容器代码不一样,其他的和前面的一样,当然SSH部署好之后也可以使用前面的方式创建数据库** 运行以下代码,允许 root 用户将自己拥有的权限授予其他用户

代码语言:javascript
复制
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
2024-11-12T07:52:41.png
2024-11-12T07:52:41.png

刷新权限

代码语言:javascript
复制
# 运行以下命令以确保权限生效:
FLUSH PRIVILEGES;

创建数据表

代码语言:javascript
复制
# 下面代码boke就是数据库名,只有在数据库不存在时才创建 boke数据库,防止重复创建引起错误。
CREATE DATABASE IF NOT EXISTS boke;

**如果今后部署博客填入数据库内 数据库名:boke 用户名:root 密码:就是前面设置的root密码**

单独创建用户使用

如果感觉使用root用户不安全也可以单独创建用户使用 1、创建用户并设置密码:

代码语言:javascript
复制
CREATE USER 'newuser'@'%' IDENTIFIED BY 'password';
  • 其中 'newuser' 是用户名,'%' 表示允许从任何主机连接,'password' 是用户的密码。

2、授予全部权限:

代码语言:javascript
复制
GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%';
  • . 表示所有数据库的所有表,GRANT ALL PRIVILEGES 授予用户全部权限。

3、刷新权限:

代码语言:javascript
复制
FLUSH PRIVILEGES;
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-11-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、手动部署
  • 二、SSH部署MySQL
  • 单独创建用户使用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档