当前位置: 首页 > news >正文

无管理员权限电脑完成MySQL数据库创建流程

背景:公司电脑,没有管理员权限

阶段一:准备阶段

步骤一:选择MySQL版本。

个人开发推荐使用绿色版本5.7.44

步骤二:获取资源。

链接:https://downloads.mysql.com/archives/community/

资源名:Windows (x86, 64-bit), ZIP Archive

阶段二:安装部署阶段

步骤一:解压文件

文件解压路径:D:\Program(不要有空格或中文)

根目录D:\Program\mysql-5.7.44下创建空白my.ini文件

[mysqld]
# MySQL根目录(替换为你的解压路径)
basedir = D:\mysql-5.7.39-winx64
# 数据存储目录(自动生成,无需手动创建)
datadir = D:\mysql-5.7.39-winx64\data
# 端口号(默认3306,若被占用可修改)
port = 3306
# 字符集(推荐utf8mb4,支持emoji)
character-set-server = utf8mb4
# 服务器ID(单机可随意设置,集群需唯一)
server-id = 1[mysql]
# 客户端字符集
default-character-set = utf8mb4[client]
# 客户端连接端口
port = 3306
default-character-set = utf8mb4

根目录D:\Program\mysql-5.7.44下创建空白data文件夹

步骤二:初始化数据库

cmd跳转bin文件夹:cd /d D:\Program\mysql-5.7.44\bin

初始化数据库:mysqld --initialize --console

此时输出报错:

mysqld: Could not create or access the registry key needed for the MySQL application
to log to the Windows EventLog. Run the application with sufficient privileges once to create the key, add the key manually, or turn off logging for that application.  不管,这是MySQL 无法向 Windows 系统的 “事件日志”(EventLog)写入日志信息(这是 Windows 系统级的日志,需要注册表权限)。

但这仅影响 “日志记录方式”,不影响数据库的核心功能(如启动服务、客户端连接、数据增删改查等)。但InnoDB 存储引擎初始化完成、生成了服务器 UUID(数据库标识)7eb7945e-9cce-11f0-8e7e-c4efbbe9e553、成功生成了 root 临时密码eoa_Dwtne0+3。

步骤三:启动服务

mysqld --defaults-file=../my.ini

运行后此cmd窗口会保持常启状态,维持服务启动,因此无法对此窗口做操作,此时另起一个cmd窗口

阶段三:初始配置阶段

步骤一:登录MySQL并修改密码

进入MySQL目录:cd /d D:\Program\mysql-5.7.44\bin

登录启动中的MySQL服务:mysql -u root -p

输入初始密码:eoa_Dwtne0+3(此时已经切换至MySQL状态,可以写SQL语句了)

修改初始密码:ALTER USER 'root'@'localhost' IDENTIFIED BY 'admin123';

刷新配置:flush privileges;

步骤二:日志与参数优化

配置my.ini,减少系统日志相关的warning和error,my.ini终版:(加了之后再起服务居然没有任何输出了,我还以为出错了,确实干净)

[mysqld]
# MySQL根目录(替换为你的解压路径)
basedir = D:\Program\mysql-5.7.44
# 数据存储目录(自动生成,无需手动创建)
datadir = D:\Program\mysql-5.7.44\data
# 端口号(默认3306,若被占用可修改)
port = 3306
# 字符集(推荐utf8mb4,支持emoji)
character-set-server = utf8mb4
# 服务器ID(单机可随意设置,集群需唯一)
server-id = 1
# 新增:指定错误日志文件(路径改为你的MySQL根目录,确保能创建文件)
log-error = D:\Program\mysql-5.7.44\mysql_error.log
# 禁用系统事件日志(避免重复报错)
log_syslog=0[mysql]
# 客户端字符集
default-character-set = utf8mb4[client]
# 客户端连接端口
port = 3306
default-character-se

阶段四:数据库操作阶段

步骤一:创建数据库

CREATE DATABASE sql_study DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

步骤二:创建用户并授权

创建用户:CREATE USER 'jiang'@'localhost' IDENTIFIED BY 'admin123';

授权该用户访问指定数据库的所有表:GRANT ALL PRIVILEGES ON sql_study.* TO 'jiang'@'localhost';

刷新权限:flush privileges;

步骤三:创建表

切换到数据库:USE sql_study

创建首张表:CREATE TABLE user (  id INT PRIMARY KEY AUTO_INCREMENT,  username VARCHAR(50) NOT NULL UNIQUE,  create_time DATETIME DEFAULT CURRENT_TIMESTAMP) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

此时才可以使用外部DBMNS连接到这个数据库:jdbc:mysql://localhost:3306/、jiang/admin123

 

按照上述步骤,我们称初始化MySQL和启动MySQL服务的窗口为cmd1,登录MySQL和修改密码操作数据库的窗口为cmd2

cmd1维持MySQL服务,cmd2类似于dbeaver相当于一个DBMS客户端,故关闭cmd2后其他客户端仍旧可以连接数据库,但关闭cmd1后其他客户端将无法连接数据库

数据库关闭:依次关闭cmd2、cmd1

数据库再起:

cd /d D:\Program\mysql-5.7.44\bin

mysqld --defaults-file=../my.ini

访问数据库:mysql -u root -p

http://www.hskmm.com/?act=detail&tid=21271

相关文章:

  • 机台设备数据管理:提升生产效率的关键策略
  • 【瑶池数据库动手活动及话题精选(体验Dify on DMS,参与Meta Agent讨论)】
  • 时钟设计优化实战
  • 河南外贸建站 | 河南外贸建站公司 | 河南外贸独立站定制 - 详解
  • kuboard使用的etcd空间清理(3个etcd)
  • 死锁的处理策略-预防死锁
  • 跨网文件安全交换系统:提升数据传输安全性和合规性
  • 随笔
  • 强化学习、深度学习、大模型、智能体
  • Node生态中最优雅的数据库事务处理机制
  • 详细介绍:扒透 STL 底层!map/set 如何封装红黑树?迭代器逻辑 + 键值限制全手撕----《Hello C++ Wrold!》(23)--(C/C++)
  • 期货市场API对接完全指南:实时行情获取与实战应用
  • Tomcat使用redis管理session
  • NOC片上网络总线初探
  • AT_agc037_c [AGC037C] Numbers on a Circle
  • 记账本|基于SSM的家庭记账本小程序设计与实现(源码+数据库+文档) - 实践
  • redis数据连接写法
  • 缩放 div
  • 死锁的概念
  • 【2025-09-29】团队合作
  • 杂凑算法学习笔记
  • pg库支持扩展postgis
  • kuboard部署启用3个etcd(k8s单个master)
  • 数据库服务分布架构(MyCAT)
  • 题解:P14038 [PAIO 2025] Adventure Plan
  • 20231414_王仕琪_密码技术密码杂凑算法学习笔记
  • web3D、webGL、webGPU、webGIS、webXR、webCodecs的概念和对比 - 实践
  • Claude code的 thinking on/off差别有多少
  • Ubuntu 25的网络配置
  • 2025.9.26 测试