`
poplar1986
  • 浏览: 223699 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

[总结]–我的提高DBA工作效率实践

阅读更多

 

入职接近半年了,大四即将结束的时候重看了一些好书,其中一本是高效能人士的七个习惯 ,还有最近读的系统管理员的时间管理 ,这两本书都讲了很多提高工作效率的技巧

这里,总结一下自己提高日常DBA工作效率的小工具

1.数据库表,字段定义在线查询

在入职第三个月,接到一个任务是为我负责的数据库的表和相关的字段进行注释文档的编写。这个事情在学校做项目也搞过,提供一 个数据库定义记录的文档是必须的,可让开发人员和DBA都知道表的具体作用,但如果是写到一个word文档,更新的时候麻烦,你每 改一次数据库就要打开那个文档更新,而其他人还需要重新下载最新版本。

解决方案: 在公司自己开发的分布式数据库系统库里面增加两个表来,一个是记录表注释,一个是记录字段注释。使用jsp连接到这 个数据库,给出表列表和根据表名字查询表定义,字段定义,索引信息,访问语句信息等对开发人员有参考价值的信息

效果: 由于在DBA修改数据库的时候就把定义信息插入到上面两个表,所查询到的定义都是和产品库一致的信息,开发人员可以很方 便的查询到想要的信息,而DBA也不再需要用word文档来记录表的定义了。

2.把DBA的部分工作交给脚本自动化完成

公司的SA组的同事们为我们DB组搭了个cacti 来监控DB服务器,每天早上回到公司的第二件事就是扫一眼这个cacti来看看服务器的 负载。没错,是第二件事,第一件事是看报警邮件…

cacti只能监控常见的参数,但公司的MySQL打了自己的补丁,cacti是检测不到的,所以老大们写了个性能统计的脚本,每周的某个 时间跑一遍,用shell,sed,awk把需要的数据信息导成一个文件,然后各个产品的DBA把对应的文件贴到我们的wiki上面…. 问题是随着时间的增长,那个wiki页面打开越来越慢..同时也看很难看得出服务器和MySQL的性能趋势

解决方案实现: 服务端用crontab 定期执行shell脚本,把对应的数据插入到数据库,数据库层建立几张表来保存,web端使用 openflash chart 2开源组件和jsp来根据各种需求来展现性能数据,并根据DBA的周报格式自动生成周报

效果: DBA,开发人员,产品经理可以很直观的看到服务器的某些参数的性能趋势,而DBA写周报的时候,可以快速的拿到性能数据, 也不需要去手动维护wiki页面了,因为已经自动化了

3. 规范数据库备份操作

公司的数据库除了使用mysql 的replication机制来作为镜像库之外,还定期备份数据文件作为历史镜像,到一定时候会删掉很久之 前的数据,但产品库的数据文件一般都是G级别的,时不时发生磁盘空间不足备份失败,备份服务器空间不足,还有引发其他脚本的 执行错误等一系列的问题。

解决方案实现:

1.使用shell的sed和awk,还有linux的crontab定期执行脚本监控备份日志信息,如发现有错误,自动通知DBA处理

2.升级历史备份脚本,如果当前磁盘空间少于上一次的备份文件大小,就不做备份了,通知DBA处理

3.写一个空间预测脚本,根据上一次的备份文件大小,判断磁盘是否有充足空间做下一次的备份,这样可以确保数据备份的完整性~

效果: 进一步保证数据备份的完整性和规范性

以上是半年来所做的提高DBA效率的实践,不算很复杂,但做好之后,意义挺大。

希望2010年可以在提高效率这方面走的更远。

原文地址:http://dbahacker.com/dba-work/dba-work-summary-htm

2
1
分享到:
评论

相关推荐

    oracle dba的unix袖珍参考手册

    《Oracle DBA的UNIX袖珍参考手册》是针对Oracle数据库管理员在UNIX环境下操作与管理的一份详尽指南,由Donald ...通过深入学习和实践手册中的知识,DBA可以更加自信地面对各种技术挑战,提高数据库系统的性能和稳定性。

    Oracle 10.2 ASM 最佳实践 最终版本

    - **模板管理**:管理好模板可以显著提高工作效率,并减少出错的可能性。 #### 使用EM简化ASM迁移 - **过程**:使用Enterprise Manager可以轻松地将非ASM数据文件迁移到ASM中。 - **步骤**:包括扫描源文件系统、...

    盖国强_提升百倍效率-Oracle数据库性能极限调优

    具体而言,优化可以分为两种方式:一是减少不必要的工作,二是提高工作效率。优化的具体目标包括: - 最小化响应时间 - 提高吞吐量 - 增加负载能力 - 减少恢复时间 ##### 2. 优化—细节决定成败 - **减少I/O操作*...

    DB2基础培训

    - **bufferpool**:缓冲池是DB2用来缓存数据页和索引页的一种内存区域,可以显著提高查询效率。 - **表空间**:表空间是逻辑上的概念,用于组织数据库中的数据文件,可以实现数据的物理隔离。 - **数据库对象**:...

    Solaris10 安装Oracle10.2 详细文档

    这一步骤对于提高系统响应速度和资源分配效率至关重要。 2. **SSH服务激活**: - 开启SSH连接功能,便于远程管理。编辑`/etc/ssh/sshd_config`文件,将`PermitRootLogin no`更改为`PermitRootLogin yes`,并重启...

    MongoDB Days 2015 深圳 PPT 共享

    11. **MongoDB工具**: MongoDB提供了一系列配套工具,如`mongod`(数据库服务器)、`mongo`(命令行工具)、`mongorestore`和`mongodump`(备份和恢复工具)等,了解这些工具的用法可以提升工作效率。 12. **开发与...

    Teradata SQL Reference Statement and Transaction Processing

    ### Teradata SQL Reference – Statement and Transaction Processing ...通过阅读本书,用户不仅能够掌握基本的SQL语法和事务控制机制,还能学到许多高级技术和实践经验,有助于提高其在实际工作中的效率和能力。

    人工智能自动sql优化工具–SQLTuning for SQL Server

    【SQLTuning for SQL Server】是一款由Quest公司开发的人工智能自动SQL...对于数据库管理员和开发人员来说,这是一款极其有价值的工具,能够显著提高工作效率,减少手动优化的工作量,确保数据库系统的高效稳定运行。

    configuration guide for RMAN

    此文档旨在帮助数据库管理员(DBA)和备份管理员理解集成过程中的关键步骤和技术要点。 在实际环境中,通常存在两个不同的团队:数据库管理员团队负责管理Oracle数据库,而备份管理员团队则专注于备份解决方案的...

    [Oracle] RAC 之 – 负载均衡深入解析

    - 在实践中,DBA与开发人员需要密切合作,根据业务逻辑和工作负载特征来设计和分配Service。服务的配置包括定义服务名、关联数据库服务与实例、设置服务属性等,以确保业务流量按预期分布。 在实施RAC负载均衡策略...

    SQL Server——从入门到放弃(14)– SQL练习9 ( CURSOR)

    总结来说,游标是SQL Server中用于逐行处理数据的强大工具,尽管它们在某些情况下可能效率较低,但在特定场景下是必要的。理解如何声明、定义、打开、使用和关闭游标是SQL Server开发人员必备的技能之一。通过实践和...

Global site tag (gtag.js) - Google Analytics