环境准备与连接
-
启动命令行
- Windows:
打开db2cmd
(专用于 DB2 的命令行窗口)或db2cwadmin
(管理员模式)。 - Linux/Unix:
使用终端执行db2
命令(需提前配置环境变量)。
- Windows:
-
连接数据库
db2 connect to 数据库名 user 用户名 using 密码
- 示例:
db2 connect to SAMPLE user db2admin using p@ssw0rd
- 查看当前连接:
db2 connect show
- 示例:
数据库与表操作
-
数据库管理
- 创建数据库:
db2 create db TESTDB
- 激活数据库:
db2 activate db TESTDB
- 列出所有数据库:
db2 list db directory
- 创建数据库:
-
表操作
- 创建表:
db2 "create table employees (id INT, name VARCHAR(50), dept VARCHAR(20))"
- 插入数据:
db2 "insert into employees values (1, '张三', '销售')"
- 查询数据:
db2 "select * from employees"
- 导出数据到文件:
db2 "export to data.csv of del select * from employees"
- 创建表:
SQL 脚本执行
-
执行 SQL 文件
db2 -tvf 脚本路径.sql
-t
:以分号结束命令-v
:显示执行的语句- 示例:
db2 -tvf /home/user/query.sql
-
交互式 SQL 模式
启动:db2
(进入交互环境)
输入 SQL 后直接执行,退出用quit
。
系统管理与监控
-
备份与恢复
- 备份数据库:
db2 backup db TESTDB to /backup
- 恢复数据库:
db2 restore db TESTDB from /backup
- 备份数据库:
-
用户权限管理
- 授予权限:
db2 "grant select on table employees to user user1"
- 撤销权限:
db2 "revoke select on table employees from user user1"
- 授予权限:
-
监控性能
- 查看当前连接进程:
db2 list applications
- 强制断开连接:
db2 force application (应用句柄)
- 监控锁状态:
db2 get snapshot for locks on 数据库名
- 查看当前连接进程:
错误排查与日志
-
常见错误处理
- SQL1031N(未启动数据库):
执行db2start
启动实例。 - SQL30081N(连接失败):
检查网络、防火墙及认证信息。
- SQL1031N(未启动数据库):
-
查看日志
- 实例日志路径(Linux):
/home/db2inst1/sqllib/db2dump/db2diag.log
- 实时监控日志:
db2diag -f -g "关键字"
- 实例日志路径(Linux):
安全最佳实践
-
避免密码暴露
使用加密连接:db2 connect to DB名 user 用户名 using ***
(执行后命令行提示输入密码,避免明文记录)
-
最小权限原则
日常操作使用普通用户,避免db2admin
等高权限账户。 -
定期更新补丁
通过 IBM Fix Central 获取最新补丁:db2licm -a 补丁文件.lic
掌握 DB2 命令行可大幅提升数据库管理效率,建议结合官方文档实践复杂操作,并定期备份关键数据,遇到问题可查阅日志或访问 IBM 社区获取支持。
引用说明: 参考 IBM 官方文档 DB2 Command Reference 及最佳实践指南,确保操作准确性与安全性。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6624.html