自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(530)
  • 收藏
  • 关注

原创 mysqlbinlog 恢复指定表

一、登录数据库刷新binlog1.1)查看当前的binlogmysql> show master status;+---------------------+----------+--------------+------------------+-------------------+| File                | Position | Binlog_Do_DB

2014-02-05 19:08:59 19831

原创 mysqldump恢复指定表

如果mysql服务器上不能随意安装软件,当需要从全备份中恢复单个表,怎么办?1.mysqldump备份指定数据库,如ivr[mysql@bjmysql01]$ mysqldump -utelivr -p123456 -F -R --events --databases ivr |gzip >ivr_$(date +%F).sql.gz2. 确认备份文件已经生成[mysql

2014-01-29 10:35:35 8530 1

原创 mysqldump默认参数add-drop-table

接到一个同事电话,说UAT环境上的一张表被删了,要恢复一下。原来是新项目UAT,从测试库用mysqldump导出表结构在UAT上执行。由于只是新增几个表结构,相关的人员也就没去审核。由开发同事自己去执行升级表结构的脚本,刚执行完就发现业务出问题了。查看后发现UAT库上丢了一张表。 检查表结构变更的脚本,发现脚本中有一个删除表的命令。原来测试库有一张表与UAT库中的表重名。本来这个表是不应该

2014-01-28 11:35:18 15164

原创 mysql中safe-updates的限制

mysql中safe-updates模式可以限制不加条件对表的更新或删除,这样对数据安全有一定的好处,可以有效的防止误操作,但更新删除也有一定的限制。测试结果如下:[mysql@bjdev01 ~]$ mysql -uroot -p -UEnter password: a)safe-updates模式下,不加条件对表update,报错ERROR 1175

2014-01-28 11:27:19 6130

原创 Ignoring query to other database

Linux命令行成功登录mysql,执行命令报 Ignoring query to other database。[mysql@bjdev01 ~]$ mysql -Uroot -pEnter password: mysql> select now();Ignoring query to other databasemysql> exitBye 退出后重新登录,正常

2014-01-27 11:10:01 1833

原创 mysqldump 备份多个表

同事要把生产环境上的一部分表加载到测试环境去,每次导出的表可能不一样。为了省去每次写脚本的麻烦,方便多个表的导出,特写如下脚本。在第一层for循环里,传入导出的数据库。select db from mysql.db where db   in ('cacti') 在第二层for循环里,传入导出的表名。SELECT table_name from information_sche

2014-01-24 22:37:51 4121

原创 Linux系统中 mysql server 之间拷贝用户权限

目的:将本机mysql的用户权限拷贝到IP 为192.168.0.*** 端口为3316的mysql中 步骤: 构造出show grants  命令 执行show grants 命令生产授权语句 给grant 语句加上分号将授权语句传递给目标mysql,并执行示例:mysql  -uroot -ptest1  -h 127.0.0.1 -N -e "SELECT CONCA

2014-01-21 14:47:33 1460

原创 如何发现mysql权限、表结构的变化

MySQL中如果打开了二进制日志,就可以找到在相应时间段内mysql权限或表结构的改变。mysql> show variables like 'log_bin_basename';+------------------+-------------------------------------------------+| Variable_name    | Value    

2014-01-13 21:31:29 1745

原创 Linux ntpdate时间同步所想到的

同事与第三方做联调,反映测试据库时间不正确,检查后发现是Linux系统时间没同步。第一反映是去做时间同步(可能大多数人都是这么想的)。然而这个同步几乎耽误了我一下午的时间。 简单记录操作步骤:1. 用date命令查看当前时间,检查操作系统时间是否正确。2. 把时间同步命令写到/etc/crontab中3. 与时间同步服务器做同步 /usr/sbin/ntpdate 192.16

2013-11-26 21:54:23 11661

原创 InnoDB提高数据insert效率

如果local_infile 被禁用,InnoDB中怎么提高insert的效率呢?1.尽量保持数据有序。减少数据插入时对索引的维护成本。2.一次插入多条数据。减少日志,降低日志刷新磁盘的频率。减少sql解析次数。3.在事物中进行插入。减少事物创建的消耗。但也要控制事物的大小,最好不超过innodb_log_buffer_size。SET autocommit=0;INSER

2013-11-26 13:14:31 4555

原创 Mysql开二进制日志的风险

有个项目外包出去了,最近上去检查Mysql数据库发现只有备份,既没有做同步也没有打开二进制日志。为了便于崩溃后恢复,和一些安全问题,想打开二进制日志。 由于是外包的项目所以本地没有测试环境。觉得打开二进制日志没什么风险,也没有做测试。通知业务部门,晚上修改重启,让一个夜班的同事测试,测试反馈一切正常,收工回家。第二天业务部门来问有没有修改程序,说有个功能不正常了。我们没有升级程序,

2013-11-25 16:42:55 1039

原创 mysql 命令行中执行sql的几种方式

1.直接输入sql执行mysql> select now();+---------------------+| now()               |+---------------------+| 2013-09-18 13:55:45 |+---------------------+1 row in set (0.00 sec) 2.执行编写好的sql脚

2013-09-18 14:15:32 57410

原创 Incorrect key file for table '/tmp/#sql_15cc_14.MYI'; try to repair it

Mysql中查看视图的时候遇到错误:'Incorrect key file for table '/tmp/#sql_15cc_14.MYI'; try to repair it' 在mysql的错误日志中可以看到类似的错误;130910  9:52:31 [ERROR] /mysql/mysql5.5.24/bin/mysqld: Incorrect key file for t

2013-09-10 15:39:04 18572

原创 mysql5.6中必要的存储引擎

mysql> select version();+-----------+| version() |+-----------+| 5.6.12    |+-----------+1 row in set (0.00 sec)源码方式安装的Mysql5.6中默认支持如下几种存储引擎,其中InnoDB是默认的存储引擎。mysql> show engines;+---

2013-08-12 14:26:58 3242

原创 1146 - Table 'xxx.xxx' doesn't exist

今天开始测试mysql的新版本,从生产mysql库中备份部分表到测试库中。测试中发现,有些表可以查询出数据,但不能update,报1146,表不存在。mysql> select version();+------------+| version()  |+------------+| 5.6.12-log |+------------+1 row in setm

2013-08-09 10:01:59 15291

原创 ERROR 1203 (42000): User ivr already has more than 'max_user_connections' active connections

接到通知说mysql的连接数不够用了,让看看什么原因。用root登录进去一看,当前的连接数远远没有达到max_connections 的连接限制。让同事把错误信息发给我:C:\Users\e1082>mysql -udev_ivr -pdev_ivr -h 192.168.1.150ERROR 1203 (42000): User dev_ivr already has more

2013-07-27 16:02:44 2906

原创 ERROR 1396 (HY000): Operation RENAME USER failed for 'root'@'%'

为了避免mysql中的安全隐患,将默认的root用户重命名。使用 rename user 命令修改root用户名失败,提示错误:ERROR 1396 (HY000): Operation RENAME USER failed for 'root'@'%'改用update mysql用户下的user表后修改成功。 mysql> use mysql;Database cha

2013-07-27 15:52:07 21321

原创 一个电话避免了一次生产事故

任务:凌晨远程对IDC的一台服务器进行维护。停机时间:10分钟风险点:维护过程中要远程重启操作系统,系统重启时间可能会很长或系统无法启动。 准备工作:1.定制应急预案2.细化操作流程3.申请停机维护时间4.发维护通知5.问题分析与总结 在正常关闭应用后如果系统超过了规定的时间未完成重启,可能需要人工关闭电源重启。如果系统重启失败,短时间内无法恢复,则需要

2013-07-22 21:45:55 1120

原创 ORA-00445: background process "J000" did not start after 120 seconds

Anything that can go wrong will go wrong. :“凡事只要有可能出错,那就一定会出错。”   墨菲定律再次被验证,早上数据库宕机,日志如下:Dump continued from file: /opt/ora11g/diag/rdbms/prodb/ORABJ/trace/ORABJ_cjq0_4189.trcORA-004

2013-07-11 00:04:28 10954 1

原创 超链接在office中不起作用

在office中用到超链接的地方,都会弹出如下错误。This operation has been cancelled due to restrictions in effect on this computer. Please contact your system administrator. 参考:http://support.microsoft.com/kb/310049/zh-c

2013-06-20 09:23:51 1135

原创 再谈oracle中“靠”字的问题

一般在遇到oracle中中文显示‘靠’的问题,一般有以下几种办法: 1.   设置注册表中的NLS_LANGHKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraClient11g_home\NLS_LANG如将NLS_LANG由:AMERICAN_AMERICA.WE8MSWIN1252改为: AMERICAN_AMERICA.ZHS16

2013-06-09 10:33:35 2277

原创 批量提取文件

需求背景:应客户要求,要提取去年几个月的通话录音。由于是7* 24的业务,电话录音非常多,历史的录音记录每小时备份一次,用tar包的形式进行备份。录音记录存放的路径是:年/月/小时/录音文件 如:2011/01/00/*.wav2011/01/01/*.wav…2011/01/23/*.wav这样每个月有28 到31 天,每天有24小时,每小时有n个录音文件。  假

2013-06-04 08:47:42 2273

原创 双引号与换行的困惑

从PL/SQL Developer中复制查询结果到文本文件中,查询结果本身看不到双引号和换行。但奇怪的是复制出来的记录中都包含了双引号和换行。这个让我感到很困惑,网上简单查了一下,只看到有人提问,却没有答案。看来只有自己想办法来解决这个问题了。 什么原因可能导致结果中出现双引号和换行的问题呢?思路如下:1.       工具中的设置有问题。是不是PL/SQL Develop

2013-06-03 10:38:33 8415

原创 Windows 中tar的用法

最近接到一个需求,要从tar中提取一些文件,顺便总结了一下tar在windows下的用法。 1.   查看帮助D:\test>tar  --helpUsage: tar [OPTION...] [FILE]...GNU `tar' saves many files together into a single tape or disk archive, and canres

2013-06-02 20:12:03 27782 1

原创 ftp 上传多个文件

Linux下用ftp写了个上传文件的小脚本,遇到两个小问题:问题1: put 只能传单个文件,但文件名不能使用通配符。解决方法: 改用mput命令。问题2: mput 可以传多个文件,但文件总是少一个。解决方法: 关闭主动模式后解决prompt off。 功能说明:登录到ftp服务器,进入linux指定目录,获取相应的文件,上传到ftp服务器。 使用方法:在linu

2013-06-01 16:12:23 27450 1

原创 mysqladmin不能修改普通用户密码

1. mysqladmin 修改root用户密码正常C:\Users\>mysqladmin -uroot -p password  "123456"Enter password: ****2.mysqladmin 修改普通用户密码,提示需要super privilege权限C:\Users\>mysqladmin -utest -p password  "123456" En

2013-04-11 13:17:27 2824

原创 ERROR 1290 (HY000)

mysql忘记了root密码,使用skip-grant-tables方式启动后,用set password的方式修改root密码时遇到错误ERROR 1290 (HY000)1.以skip-grant-tables方式启动mysqlC:\Users\>mysqld --skip-grant-tables130411 10:09:30 [Warning] '--default-c

2013-04-11 13:14:13 16292

原创 1396 - Operation CREATE USER failed

mysql重新创建用户时出现1396 - Operation CREATE USER failed;flush PRIVILEGES 刷新权限后,用户能正常创建。1.  查看当前用户mysql> select user();+----------------+| user()         |+----------------+| root@localhost |

2013-04-10 20:07:16 17700

原创 Oracle 11g 中SQL 执行计划不稳定

测试过程中发现一个奇怪的现象,sql在第一次执行时1秒内能出结果。第二次以后,每次都在40秒左右能出结果。用10046分析后,发现执行计划基本一致,但消耗的成本却不一样。baidu,google后发现与一个神奇的参数有关,在sql中加入如下的hint 后/*+OPT_PARAM('_optimizer_use_feedback','false') */执行计划稳定,基本在1秒内能出结果

2013-03-28 10:00:52 4017 1

翻译 OGG-00446 No valid log files for current redo sequence

goldengate 从oracle asm 中增量同步数据时,出现下述错误. ERROR   OGG-00446  No valid log files for current redo sequence 367, thread 1, error retrieving redo file namefor sequence 367, archived = 0, use_alternat

2013-03-28 09:51:12 9074

原创 ORA-00845: MEMORY_TARGET not supported on this system

Linxu重启后,启动oracle的时候出现下述错误ORA-00845: MEMORY_TARGET not supported on this system一般Linux中这个问题是由于SGA的大小超过了操作系统/dev/shm的大小之前确实是修改过memory_target的参数,但/dev/shm是修改过的。检查一下:[root@bjdg01 ~]# df -k /dev

2013-02-27 17:37:11 786

翻译 Linux中设置HugePages

Linux中使用HugePages可以减少操作系统对page的维护,增加TLB(translation Lookaside Buffer)的命中率.由于HugePages和Oracle 的AMM不兼容,所以在Oracle 11g中使用HugePages需要禁用AMM.The AMM and HugePages are not compatible. One needs to disable

2012-12-30 21:28:31 6816

原创 ORA-06512: at "DBSNMP.BSLN_INTERNAL", line 2073

数据库升级到11.2.0.3 后稳定运行了一年多了,alert日志中出现下述错误。Sun Dec 16 15:00:07 2012  (这一天是周日)Errors in file /opt/ora11g/diag/rdbms/ORACNBJ1/trace/ORACNBJ1_j001_6548.trc:ORA-12012: error on auto execute of job "

2012-12-29 11:09:09 3949

原创 Dataguard 归档不能自动传输

由于操作系统的原因,把dataguard的主库进行重启。第二天发现归档日志不能自动传到备份库。检查主库的归档参数设置,发现log_archive_dest_state_2竟然为DEFER之前这个dataguard一直好好的,且在日志中没有发现有修改这个参数的记录。SQL> SELECT NAME ,VALUE FROM v$parameter WHERE name='log_archi

2012-12-28 21:25:52 2777

翻译 Linux bug 14258279: scheduling clock overflows in 208 days

早上同事反映数据库不能用。无法正常登录主机。多次尝试后终于登上主机,检查系统日志发现下述错误:BUG: soft lockup - CPU#5 stuck for 17163091988s!貌似是操作系统的bug.以下是详细信息:# uname -raLinux Test-DB01 2.6.32-200.13.1.el5uek #1 SMP Wed Jul 27 21:

2012-12-19 15:46:47 1521

原创 Instantiating disk: failed

我们知道Linx 6 上安装Oracle 11G R2 RAC时要禁用Firewall 和SElinux ,下面是不禁用SElinux的后果.Linux下创建ASM磁盘的时候遇到下述错误:# /usr/sbin/oracleasm createdisk VO1 /dev/sdb1Writing disk header: doneInstantiating disk: failed

2012-12-14 12:05:14 5229

原创 PRVF-7617 TCP connectivity check failed for subnet

我们知道Linx 6 上安装Oracle 11G R2 RAC时要禁用Firewall 和SElinux ,下面是不禁用Firewall的后果. 使用CVU检查安装环境时遇到PRVF-7617 TCP connectivity check failed for subnet$./runcluvfy.sh stage -pre crsinst -n bjrac01,bjrac02 -fi

2012-12-14 11:48:10 9974

原创 Oracle Linux6.3 Package Requirements for Oracle Grid Infrastructure and Oracle RAC

功能:在oracle linux6.3 下自动安装 Grid Infrastructure 和Oracle RAC 需要的rpm说明:1.  一部分包通过系统自带的光盘安装,一部分通过oracle yum 进行自动安装            2. /mnt/Server/Packages 为Linux系统盘mount的路径            3. 系统设置的代理为: http_pr

2012-12-06 16:14:35 1971

原创 auto config ssh equivalency

功能描述:linux中自动配置两个节点的ssh等价用法: 1.将以下脚本另存为config_ssh.sh               2. 使用说明               sh config_ssh.sh 后接6个参数,各参数间以空格分开.               sh config_ssh.sh   node1节点IP    node1节点用户 node1节点密码  n

2012-12-06 15:55:54 702

原创 Install Oracle ASMLib on Oracle Linux 6

最近打算在Oracle Linux Server release 6.3安装RAC,在安装asmlib的时候发现OEL6 上oracleasm kernel driver 不用装了。但是oracleasmlib 和oracleasm-support还要安装.# cat /etc/issueOracle Linux Server release 6.3  以下是oracle官网的一段

2012-12-06 15:30:29 6212

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除