
DBA
文章平均质量分 55
babydavic
这个作者很懒,什么都没留下…
展开
-
分析sql性能
--很多时候,我们不太清楚自己写的SQL语句好还是不好,往往数据量一大,程序运行变慢。其实在SQL/PLUS里可以很清晰的分析出SQL语句的执行计划,它可以提醒我们来创建索引或改变SQL语句的写法。--先在sys用户下运行@/ORACLE_HOME/rdbms/sqlplus/admin/plustrce.sql--内容:set echo ondrop role plustrace;cre原创 2006-05-10 17:01:00 · 1182 阅读 · 1 评论 -
SQL中drop,delete和truncate的异同
相同点: truncate 和不带 where 子句的 delete,以及 drop 都会删除表内的数据 不同点: 1. truncate 和 delete 只删除数据不删除表的结构(定义) drop 语句将删除表的结构被依赖的约束(constrain)、触发器(trigger)、索引(index);依赖于该表的存原创 2012-12-30 15:00:08 · 950 阅读 · 0 评论 -
MYSQL binlog_format 解释
MySQL 5.1 中,在复制方面的改进就是引进了新的复制技术:基于行的复制。简言之,这种新技术就是关注表中发生变化的记录,而非以前的照抄 binlog 模式。从 MySQL 5.1.12 开始,可以用以下三种模式来实现:基于SQL语句的复制(statement-based replication, SBR),基于行的复制(row-based replication, RBR),混合模式复制(转载 2012-12-14 17:24:11 · 20418 阅读 · 0 评论 -
MySQL 的存储引擎解释
转自 http://isky000.com/MySQL 的存储引擎可能是所有关系型数据库产品中最具有特色的了,不仅可以同时使用多种存储引擎,而且每种存储引擎和MySQL之间使用插件方式这种非常松的耦合关系。由于各存储引擎功能特性差异较大,这篇文章主要是介绍如何来选择合适的存储引擎来应对不同的业务场景。MyISAM特性不支持事务:MyISAM存储引擎不支持事务,所原创 2013-01-03 17:46:16 · 950 阅读 · 0 评论 -
MySQL数据库性能优化之硬件优化
转自 http://isky000.com/在过往与很多人的交流过程中发现,在谈到基于硬件来进行数据库性能瓶颈分析的时候,常被大家误解为简单的使用更为强劲的主机或者存储来替换现有的设备。个人觉得这其中可能存在一个非常大的误区。我们在谈论基于硬件进行优化的时候,不能仅仅将数据库使用的硬件划分为主机和存储两部分,而是需要进一步对硬件进行更细的分解,至少也应该分解到如下范畴:原创 2013-01-05 13:54:27 · 1404 阅读 · 0 评论 -
MySQL 5.6 GA 与 MySQL 5.5 性能对比
MySQL 5.6 GA 发布了,毫无疑问,这是 MySQL 最棒的一个版本。如果你还不清楚 MySQL 5.6 版本一长串的新特性和改进内容,可以从这里获得了解。而我这篇文章的主要目的则是性能的测试。我使用 Sysbench workloads (Read-Only/Read-Write) 来测试。下面是我的测试环境:硬件配置:服务器 : 32核 bi-threa原创 2013-02-07 15:20:21 · 5415 阅读 · 0 评论 -
Mysql InnoDB bufferpool
今博客一位朋友找到问这个问题,上网找出以下的解释,希望能帮到他使用问题:发现在bufferpool用完后,insert完成后提交,select和update操作时数据如果不在bufferpool里,就需要从磁盘读,这时insert或者update操作会执行1s以上,导致那段时间的insert操作减少innoDB在内存中维护一个缓存池用于缓存数据和原创 2013-02-21 10:36:20 · 5250 阅读 · 0 评论 -
Mysql5.5 大量数据插入出现的抖动问题 及 解决方法
背景日志型应用的一个典型操作,是周期性地有大量的insert操作。这类操作需要对扩展表空间。 分析在InnoDB里,扩展表空间的操作是在语句执行过程中,由执行线程直接调用的。尤其是对于一些表每行比较大,则会出现每插入几条记录就需要扩展表空间。虽然有insert buffer和write ahead logging策略保证在执行线程中不直接操作表数据文件,但扩展表空间的原创 2013-02-21 17:19:22 · 3372 阅读 · 0 评论 -
.bash_profile和.bashrc的什么区别
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置./etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登转载 2014-04-15 18:13:43 · 715 阅读 · 0 评论 -
Mysql 日志分析工具介绍
1. 工具简介pt-query-digest是用于分析mysql慢查询的一个工具,它可以分析binlog、General log、slowlog,也可以通过SHOWPROCESSLIST或者通过tcpdump抓取的MySQL协议数据来进行分析。可以把分析结果输出到文件中,分析过程是先对查询语句的条件进行参数化,然后对参数化以后的查询进行分组统计,统计出各查询的执行时间、次数、占比等,可以借助分转载 2014-10-16 18:03:37 · 11142 阅读 · 0 评论 -
Mysql Innodb 学习经验
对于数据库来讲大多瓶颈都出现在IO问题上,所以现在SSD类的设备也才能大行其道。那数据库的IO这块有什么可以优化的吗? 我这里大致谈一下我的看法,希望能达到一个抛砖引玉的效果。 这里谈一下数据库本身的配置方面 具体如下: 配置方面对于IO优化的原则:尽可能能缓存,减少读对数据库的随机IO的请求;同时减少写的随机IO的随时发生,利用各种buffer去缓存。下面原创 2012-12-29 22:43:04 · 1749 阅读 · 0 评论 -
MYSQL 转换编码的解决方法
一、在utf8的mysql下得到中文‘游客’的gbk下的16进制编码mysql> SELECT hex(CONVERT( '游客' USING gbk )); -> D3CEBFCD反推gbk的16进制编码,取回中文mysql> SELECT CONVERT( unhex('d3cebfcd') USING gbk); -> ’游客'从gbk原创 2012-12-26 17:00:40 · 11324 阅读 · 0 评论 -
mysql主从热备
mysql主从热备有2种配置方式,备份某些库或者忽略备份某些库,建议选择后者master机器以下是代码片段:vi my.cnf,添加下面的 log-bin server-id = 1 #sql-bin-update-same binlog-do-db=mysql //备份的数据库名,可以添加多个或者原创 2012-12-25 09:58:26 · 11458 阅读 · 0 评论 -
DBA的典型职责(你想做到合格DBA必须要做的事情)
· 把监视数据库实例当作每日必做工作以保证其可用性。解决不可用的问题。 · 收集系统统计和性能信息以便定向和配置分析。 · 配置和调整数据库实例以便在应用程序特定要求下达到最佳性能。 · 分析和管理数据库安全性。控制和监视用户对数据库的访问。必要时审计数据库的使用。 · 监视备份程序。必要时提供恢复。测试备份与恢复程序。 · 升级RDBMS软件并且在必要时使用补丁。转载 2006-05-10 13:38:00 · 1767 阅读 · 0 评论 -
SQL-CASEWhen使用
SELECT industryname,domaintype,COUNT(domaintype) AS buscount,t1.total--,SUM(buscount) AS totalFROM ( select ii.industryname as industryname,ii.industryid,d.setup_date,--d.busdomain_id, CASE mm.membe原创 2006-05-10 16:01:00 · 1470 阅读 · 0 评论 -
加大oracle的连接数
SQL> alter system set processes=300 scope=spfile;参考:http://www.cublog.cn/u/6797/?u=http://www.cublog.cn/u/6797/showart.php?id=70922转载 2006-05-10 16:05:00 · 1185 阅读 · 0 评论 -
sql plus 简单语句
1.查询所有表名 eg:select table_name from tabs; 2.使用操作系统验证方式connect / as sysdba connect / as sysoper3.password 修改密码4. sys 初始密码 change_on_install system 初始密码 manager5.alter database open read only原创 2006-05-10 17:04:00 · 1117 阅读 · 0 评论 -
oracle中查询语句执行顺序
oracle中查询语句执行顺序1.根据where子句选择行2.根据group by子句组合行3.为每个组计算分组函数结果4.再根据having子句选择和排除组5.根据order by 子句中的分组函数的结果对组进行排序. order by 子句必须使用分组函数或者在group by指定的列原创 2006-08-05 12:52:00 · 2676 阅读 · 1 评论 -
重启oracle服务器
以oracle用户登录系统 启动数据库sqlplus / as sysdba SQL> startup 关闭数据库sqlplus / as sysdbaSQL> shutdown immediate 启动监听器: lsnrctl start出现下列错误,是非正常关闭导致LOG损坏ORA-16038: log 2 sequence# 1 cannot be archivedORA-19809: li原创 2006-08-13 23:17:00 · 8156 阅读 · 0 评论 -
获取当前表的Sequence+1;
获取当前表的Sequence+1,可以查询dual表eg:select party_signer_id.nextval into i from dual ;原创 2006-08-15 01:06:00 · 1311 阅读 · 0 评论 -
mysql 心得
问题1 : 在我新建的库中,凡是我通过工具一录入中文字符,他就说 data too long原因: 我用mysql工具,他认的编码是 itan1 ,所以所有的中文编码为itan1 ,自然编码过长。。。。 然后我改了myini的配置,在window底下的编码自然是gb2312。。。。。,然后在mysql dos 界面底下就可以插入数据问题2: 数据库跨库查询性能好吗?~答 : 不好。原创 2007-02-04 14:15:00 · 1508 阅读 · 0 评论 -
InnoDB一定会在索引中加上主键吗?
转: http://www.penglixun.com/tech/database/will_innodb_store_pk_in_index.html我之前看代码记得是如果索引末尾就是主键,那么InnoDB就不再添加主键了,如果索引末尾不是主键,那么会添加主键,但是这跟测试结果不符:CREATE TABLE t ( a char(32) not null p转载 2012-11-18 16:19:46 · 2193 阅读 · 0 评论 -
mysql数据库的基本操作
MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束):1.新建用户登录MYSQL: @>mysql -u root -p @>密码创建用户: mysql> insert into mysql.user(Host,User,Password) values("localhost","test"转载 2014-10-20 13:51:50 · 5669 阅读 · 0 评论