企业网络管理课程报告:MySQL/MSSQL/Oracle三库运维实验全记录

发布时间:2026/7/2 5:38:19
企业网络管理课程报告:MySQL/MSSQL/Oracle三库运维实验全记录 摘要本文记录了《企业网络管理》第3章网络数据库运维的完整实验过程C14~C20涵盖 MySQL 8.0、MS SQL Server 2022、Oracle 19c 三大关系型数据库的安装部署、远程访问配置、用户权限管理、图形化运维、备份还原以及 SQL 实践。文章总结了各数据库的方言差异与安全操作规范并通过横向对比表展示了适用场景、部署成本与社区生态最后附有高频报错速查指南为从入门到企业级 DBA 的进阶提供系统参考。一、实验背景与目标《企业网络管理》第3章网络数据库运维是整门课程实践密度最高的章节。本章要求我们在真实环境中完成MySQL、MS SQL Server、Oracle三种主流关系型数据库的安装部署、基础管理与SQL操作。学习目标分为三个层面安装层独立完成数据库初始化解决服务注册、端口监听、远程访问等环境配置问题管理层掌握用户授权、备份还原、图形化运维等DBA日常操作应用层理解不同数据库的SQL方言差异能编写安全高效的增删改查语句。以下记录全部来自课堂实验C14~C20的真实操作过程。二、实验总览章节实验编号核心任务关键技能点3.1 MySQL基础操作C14安装、建库、授权服务配置、远程访问3.2 MySQL管理系统C15Workbench/NavicatEER图、可视化建表3.3 MySQL记录管理C16增删改查、分页JOIN、LIMIT、安全书写规范3.4 MSSQL基础操作C17安装、sa启用、T-SQL混合认证、SSMS脚本生成3.5 MSSQL管理与使用C18备份还原、维护计划BACKUP/RESTORE、差异备份3.6 Oracle安装C19Oracle 19c部署硬件预检、监听器配置3.7 Oracle使用C20SQL*Plus、PL/SQL序列、伪列、匿名块三、MySQL 运维实践3.1 - 3.33.1 基础操作与远程访问配置C14MySQL 8.0 安装过程相对顺利但远程访问是首个卡点。很多同学在C14-3实验时遇到Cant connect to MySQL server错误我总结了一套三步排查法1服务端绑定地址修改MySQL 8.0 默认仅监听本地回环地址需修改配置文件# 文件路径C:\ProgramData\MySQL\MySQL Server 8.0\my.ini [mysqld] bind-address 0.0.0.0 注意ProgramData 是隐藏文件夹需在资源管理器地址栏手动输入。 2防火墙放行3306端口 WinR 输入 wf.msc → 入站规则 → 新建规则 → 端口 → TCP → 特定端口 3306 → 允许连接 → 名称填 MySQL-Remote。 3用户权限确认 创建用户时务必指定 % 通配符否则仅允许本地登录 sql -- 创建可远程访问的用户兼容旧版客户端认证 CREATE USER admin% IDENTIFIED WITH mysql_native_password BY SecurePass123!; GRANT ALL PRIVILEGES ON school_db.* TO admin%; FLUSH PRIVILEGES; -- 验证 SELECT user, host FROM mysql.user WHERE useradmin; 3.2 图形化管理与EER图C15 实验C15让我体会到可视化工具对效率的提升。使用 MySQL Workbench 的 Reverse Engineer 功能可以根据已有表自动生成实体关系图。 关键技巧只有显式建立外键的表才会在EER图中出现连线。建表时建议统一使用 InnoDB 引擎并声明外键 sql CREATE TABLE departments ( dept_id INT PRIMARY KEY AUTO_INCREMENT, dept_name VARCHAR(50) ) ENGINEInnoDB; CREATE TABLE students ( stu_id INT PRIMARY KEY AUTO_INCREMENT, stu_name VARCHAR(50), dept_id INT, -- 显式外键便于生成ER图 FOREIGN KEY (dept_id) REFERENCES departments(dept_id) ON DELETE SET NULL ON UPDATE CASCADE ) ENGINEInnoDB; 3.3 记录管理与SQL安全规范C16 C16实验的重点不是语法本身而是养成安全的操作习惯。以下是我严格遵守的两条红线 红线一UPDATE/DELETE前先用SELECT确认 sql -- 先确认影响范围 SELECT * FROM employees WHERE dept 销售部 AND salary 5000; -- 确认无误后执行更新 UPDATE employees SET salary salary * 1.1 WHERE dept 销售部 AND salary 5000; 红线二分页查询必须带ORDER BY sql -- 稳定分页写法第3页每页20条 SELECT emp_id, emp_name, hire_date FROM employees ORDER BY emp_id DESC LIMIT 20 OFFSET 40; 四、MS SQL Server 运维实践3.4 - 3.5 3.4 安装与认证模式C17 SQL Server 2022 的安装比MySQL复杂主要卡在认证模式和网络协议两处。 启用sa账号与混合认证 若安装时未勾选混合模式后续需手动修改 sql -- 以Windows身份登录后执行 ALTER LOGIN sa ENABLE; ALTER LOGIN sa WITH PASSWORD ComplexPass2026!; GO 开启TCP/IP远程访问 打开 SQL Server配置管理器 → SQL Server网络配置 → MSSQLSERVER的协议 → 右键启用 TCP/IP → IP地址页签 → IPAll → TCP端口设为 1433 → 重启SQL Server服务。 3.5 备份还原与维护计划C18 C18是本章最具企业价值的实验。生产环境必须建立完整备份差异备份日志备份的三级体系 sql -- 完整备份每周执行 BACKUP DATABASE [EnterpriseDB] TO DISK ND:\Backup\EnterpriseDB_Full.bak WITH COMPRESSION; -- 差异备份每日执行 BACKUP DATABASE [EnterpriseDB] TO DISK ND:\Backup\EnterpriseDB_Diff.bak WITH DIFFERENTIAL, COMPRESSION; -- 还原先完整NORECOVERY后差异RECOVERY RESTORE DATABASE [EnterpriseDB_Test] FROM DISK ND:\Backup\EnterpriseDB_Full.bak WITH NORECOVERY; RESTORE DATABASE [EnterpriseDB_Test] FROM DISK ND:\Backup\EnterpriseDB_Diff.bak WITH RECOVERY; 关键区别NORECOVERY 保留数据库在还原状态允许继续追加差异或日志备份RECOVERY 则直接使数据库上线可用。 五、Oracle 运维实践3.6 - 3.7 3.6 Oracle 19c 安装避坑C19 Oracle安装是本章难度最高的实验耗时最长。我整理了硬件预检清单与常见陷阱 检查项 要求 失败后果 内存 ≥2GB可用 安装程序闪退 磁盘格式 NTFS FAT32无法存放超大安装文件 临时目录 不含中文路径 环境变量解析失败 主目录密码 大小写数字≥8位 Oracle VSS Writer服务无法启动 监听器配置验证 安装完成后cmd中执行 bash lsnrctl status 预期输出应显示 STATUS READY 且端点包含 PORT 1521。若显示 BLOCKED检查 tnsnames.ora 中的HOST是否与本机名一致 ini # %ORACLE_HOME%\network\admin\tnsnames.ora ORCL (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST localhost)(PORT 1521)) (CONNECT_DATA (SERVER DEDICATED)(SERVICE_NAME orcl)) ) 3.7 SQLPlus与PL/SQLC20 Oracle的SQL方言与MySQL差异显著以下是三个核心区别 1序列实现自增 sql CREATE SEQUENCE emp_seq START WITH 1 INCREMENT BY 1 NOCACHE NOCYCLE; INSERT INTO employees(id, name) VALUES (emp_seq.NEXTVAL, 张三); COMMIT; -- Oracle必须显式COMMIT 2伪列ROWNUM分页 sql SELECT * FROM ( SELECT ROWNUM AS rn, emp.* FROM employees emp WHERE ROWNUM 20 ) WHERE rn 10; 3PL/SQL匿名块 实验要求编写带事务控制的加薪过程 sql SET SERVEROUTPUT ON; DECLARE v_dept_id NUMBER : 10; v_rate NUMBER : 0.1; BEGIN UPDATE employees SET salary salary * (1 v_rate) WHERE dept_id v_dept_id; IF SQL%ROWCOUNT 0 THEN DBMS_OUTPUT.PUT_LINE(加薪成功人数 || SQL%ROWCOUNT); COMMIT; ELSE DBMS_OUTPUT.PUT_LINE(无匹配记录已回滚); ROLLBACK; END IF; END; / 六、三大数据库横向对比 完成全部实验后我对三种数据库的适用场景有了清晰认知 维度 MySQL 8.0 MS SQL Server Oracle 19c 适用场景 Web应用、中小型企业 Windows生态、制造业 金融、电信核心系统 管理工具 Workbench/Navicat SSMS SQL Developer SQL方言 标准SQL少量扩展 T-SQL PL/SQL最成熟的过程化能力 认证方式 本地/远程用户 Windows集成/SQL混合 数据库用户/操作系统认证 备份机制 物理备份mysqldump 完整/差异/日志备份 RMANRecovery Manager 学习曲线 ⭐⭐ ⭐⭐⭐ ⭐⭐⭐⭐⭐ 七、常见报错速查 ## 六、三大数据库横向对比 完成全部实验后我对三种数据库的适用场景有了清晰认知 | 维度 | MySQL 8.0 | MS SQL Server | Oracle 19c | |------|-----------|---------------|------------| | 适用场景 | Web应用、中小型企业 | Windows生态、制造业 | 金融、电信核心系统 | | 管理工具 | Workbench/Navicat | SSMS | SQL Developer | | SQL方言 | 标准SQL少量扩展 | T-SQL | PL/SQL最成熟的过程化能力 | | 认证方式 | 本地/远程用户 | Windows集成/SQL混合 | 数据库用户/操作系统认证 | | 备份机制 | 物理备份mysqldump | 完整/差异/日志备份 | RMANRecovery Manager | | 典型部署成本 | 免费开源社区版零许可费云托管按需付费成本最低 | Express版免费但功能受限Standard/Enterprise按核心授权成本中等 | 企业版按核心/处理器授权许可费高昂需配套购买技术支持总拥有成本最高 | | 社区支持与文档丰富度 | ⭐⭐⭐⭐⭐ 开源社区最活跃官方手册详尽第三方教程、问答资源极其丰富 | ⭐⭐⭐⭐ 微软官方文档体系完善SQL Server Central等技术社区活跃 | ⭐⭐⭐ 官方文档权威但入门门槛高MOS知识库需付费中文社区资源相对稀缺 | | 学习曲线 | ⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ | 整理实验中的高频报错方便后续快速排查 报错信息 数据库 解决方案 Cant connect to MySQL server MySQL 检查服务是否启动、防火墙3306端口、bind-address Authentication plugin caching_sha2_password MySQL 升级客户端或改用mysql_native_password Login failed for user sa MSSQL 启用sa账号确认混合模式已开启 ORA-12541: TNS:no listener Oracle 执行 lsnrctl start 启动监听器 ORA-01017: invalid username/password Oracle 用SYS账号解锁并重置密码 八、总结与展望 本章 7组实验、横跨3种数据库 的学习让我完成了从只会写SELECT到能独立部署企业数据库环境的跨越。 三点核心收获 安装是运维的第一步字符集、监听端口、认证模式必须在部署阶段规划好后期改动成本极高 备份意识要刻在DNA里任何改动前先执行备份C18的BACKUP/RESTORE实验让我养成了肌肉记忆 SQL通用但方言有差异JOIN、事务ACID是通用的但分页语法、自增实现、字符串拼接需针对性记忆。 下一步计划深入学习 MySQL主从复制 与 Oracle RMAN争取考取 OCP 认证向企业级DBA方向持续深耕。