Docker 创建mysql用户

要在Docker中以root用户身份创建一个MySQL数据库(schema)并设置一个新用户xiaokkk,密码为123456,您需要先确保您的Docker容器正在运行,并且知道如何连接到它。以下是一步步的指南:

1. 连接到Docker中的MySQL容器

首先,您需要通过Docker执行一个命令来连接到运行中的MySQL容器。这通常涉及到使用docker exec命令和容器ID或名称。如果您不知道容器ID,可以通过docker ps命令找到它。

复制代码
docker ps # 查找MySQL容器ID
docker exec -it <container_id> bash # 进入容器的bash shell

2. 登录MySQL并创建数据库

在容器内部,您可以直接使用MySQL客户端与数据库交互。首先,以root用户身份登录MySQL:

复制代码
mysql -u root -p

此时,系统会提示您输入密码。根据您容器初始化时设置的MYSQL_ROOT_PASSWORD环境变量,输入相应的密码(在您的案例中,没有直接提供,但通常在运行容器时设置)。

登录后,创建一个新的数据库(schema):

复制代码
CREATE DATABASE new_schema;

3. 创建新用户并授权

接下来,创建用户abragent并为其设置密码,然后给这个用户在新创建的数据库上分配权限:

复制代码
CREATE USER 'xiaokkk'@'%' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON new_schema.* TO 'xiaokkk'@'%';
FLUSH PRIVILEGES;

这里:

  • 'xiaokkk'@'%' 表示用户xiaokkk可以从任何主机连接到数据库。如果您希望限制访问源,可以替换%为特定的IP地址或子网,例如'xiaokkk'@'192.168.1.0/24'。
  • GRANT ALL PRIVILEGES 给予用户对new_schema数据库的所有权限。
  • FLUSH PRIVILEGES 是为了立即刷新MySQL的权限表,使更改生效。

完成上述步骤后,您就在Docker中的MySQL容器内以root用户身份创建了一个名为new_schema的数据库,并为用户xiaokkk设置了密码及相应权限。请根据实际情况调整数据库名称、用户名和密码。

相关推荐
余槐i17 分钟前
MySQL 8.0 联合索引走错:为什么加了索引查询反而从 200ms 变成 8s
java·spring boot·mysql·docker·性能优化
csdn_aspnet1 小时前
如何在本地 Docker 容器中运行 Redis,并使用 Redis Insight 和 Redis CLI 进行管理
redis·docker·容器
进击的荆棘1 小时前
MySQL——数据库基础
数据库·mysql
Decay__1 小时前
22_MySQL 运维自动化平台 —— 部署编排 + 监控 + 巡检 + 告警 + 工单闭环一体化
运维·数据库·sql·mysql·架构
且从容.1 小时前
Ubuntu 安装 Docker
linux·ubuntu·docker
todoitbo2 小时前
我在 Mac 上用 Docker 部署 Nexent:从拉取镜像到接入模型
macos·docker·大模型·ai智能体·nexent·快速入门与环境准备
FungLeo2 小时前
成为全栈·基础补充·数据库索引:为什么加了索引还是慢
mysql·postgresql·sqlite·sql优化·数据库索引·成为全栈
codeejun2 小时前
每日一Go·MySQL-11、覆盖索引 & 回表原理
javascript·数据库·mysql
Decay__3 小时前
21_MySQL 优化案例集 —— 慢 SQL 优化、索引重构与参数调整收益对比
运维·数据库·sql·mysql·架构
Goboy3 小时前
夯爆了,我被一个一句话接入的免费可观测平台策反了,那一刻我决定放弃用了3年的Prometheus
后端·docker·kubernetes