自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 [置顶]Shell碎碎念

1. 字符串如何大小写转换str="This is a Bash Shell script."1> tr方式     newstr=`tr '[A-Z]' '[a-z]' 2> typeset typeset -u VARIABLE (把VARIABLE的小写转换成大写)typeset -l VARIABLE (把VARIABLE的大写转换成小写)如:[oracle

2016-03-10 15:19:30 424

原创 [置顶]Oracle碎碎念~1

1. 设置SQL*Plus提示符    SQL> set sqlprompt "_user'@'_connect_identifier>"    SYS@orcl>    为了对所有的SQL*Plus会话自动设置sqlprompt,将上面的命令放置在ORACLE_HOME/sqlplus/admin目录中的glogin.sql文件内2. 查看角色RESOURCE被授予的系统权限

2016-03-10 15:19:28 458

原创 [置顶]Linux碎碎念

在学习Linux过程中,有许多有用的小技巧。如果放在纸质的笔记本上,平时查阅会相当不方便。现在以一种“碎碎念”的方式,汇集整理在此,目前还不是很多,但随着学习、工作的深入,后续会陆陆续续添加更多的小技巧。1. 配置ssh的等效性    ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]      这样id_rsa.pub可以直接添

2016-03-10 15:19:25 585

原创 MySQL常见错误

1. TokuFT file system space is really low and access is restricted解决方法:修改tokudb_fs_reserve_percent参数,不过该参数是静止参数,需重启实例具体可参考:http://www.cnblogs.com/zuoxingyu/p/5103638.html2. 同样可参考:http://

2016-03-10 15:19:16 356

原创 MyCAT ER分片的验证

在这里,构造了两张表,熟悉Oracle的童鞋都知道,dept(部门表)和emp(员工表),其中dept中的deptno是emp表中dept_no的外键。两表的建表语句如下:create table dept(deptno int,dname varchar(10),datanode varchar(10));create table emp(empno int,dept_no int,

2016-03-10 15:19:12 506

原创 MySQL索引下推技术

索引下推整个思路如下:To see how this optimization works, consider first how an index scan proceeds when Index Condition Pushdown is not used:Get the next row, first by reading the index tuple, and then

2016-03-10 15:19:07 496

原创 MySQL Range Optimization

8.2.1.3 Range OptimizationMYSQL的Range Optimization的目的还是尽可能的使用索引The range access method uses a single index to retrieve a subset of table rows that are contained within one or several index value

2016-03-10 15:19:03 452

原创 Redis入门

一、安装目前,官方最新稳定版本为3.0.7# wget http://download.redis.io/releases/redis-3.0.7.tar.gz# cd /usr/local/# tar xvf /root/redis-3.0.7.tar.gz# cd redis-3.0.7/# make 二、启动安装完成后,在src目录下会生成启动执行程序,包

2016-03-10 15:18:58 322

原创 用十条命令在一分钟内检查Linux服务器性能

转自:http://www.infoq.com/cn/news/2015/12/linux-performance如果你的Linux服务器突然负载暴增,告警短信快发爆你的手机,如何在最短时间内找出Linux性能问题所在?来看Netflix性能工程团队的这篇博文,看它们通过十条命令在一分钟内对机器性能问题进行诊断。概述通过执行以下命令,可以在1分钟内对系统资源使用情况有个大致的了解。

2016-03-10 15:18:54 361

原创 Icinga使用总结

1. 在定义命令的时候,往往需要修改commands.cfg配置文件,如果使用NPRE插件监控远程服务器,其实,定义命令也没这么复杂commands.cfg中有关check_nrpe的命令定义如下:define command{ command_name check_nrpe command_line $USER1$/check_nrpe

2016-03-10 15:18:49 719

原创 MyCAT日志分析

MyCAT日志对于了解MyCAT的运行信息不可获取,譬如MyCAT是否采用读写分离,对于一个查询语句,MyCAT是怎样执行的,每个分片会分发到哪个节点上等等。默认是info级别,通过log4j.xml可将其设置debug级别,这样就可获得更多有关MyCAT运行的内部信息。下面通过对MyCAT的启动以及执行一个查询语句来分析MyCAT的运行流程。 Here We Go!Mycat

2016-03-10 15:18:45 1328

原创 关于MyCAT字符集的验证

MyCAT默认字符集是UTF8下面通过查看日志来验证不同的MySQL客户端字符集和服务器字符集对于MyCAT的影响。日志中与字符集有关的主要有三部分:1. 初始化MyCAT连接池2. 心跳检测3. 在执行SQL语句时的连接同步。因为MyCAT实现的是三节点的读写分离和自动切换,以下修改的均是localhost节点上MySQL实例的字符集,其它两个点(192.168.244.

2016-03-10 15:18:40 625

原创 MyCAT常用分片规则之分片枚举

MyCAT支持多种分片规则,下面测试的这种是分片枚举。适用场景,列值的个数是固定的,譬如省份,月份等。在这里,需定义三个值,规则均是在rule.xml中定义。1. tableRule2. function3. mapFile首先,定义tableRule, tableRule name="sharding-by-intfile-test">

2016-03-10 15:18:38 294

原创 MySQL参数

1. sql_safe_updates官方解释如下:If set to 1, MySQL aborts UPDATE or DELETE statements that do not use a key in the WHERE clause or a LIMIT clause. (Specifically, UPDATE statements must have a WHERE cl

2016-03-10 15:18:34 320

原创 CentOS 7下MySQL服务启动失败的解决思路

今天,启动MySQL服务器失败,如下所示:[root@spark01 ~]# /etc/init.d/mysqld startStarting mysqld (via systemctl): Job for mysqld.service failed because the control process exited with error code. See "systemctl

2016-03-10 15:18:31 649

原创 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

为了加强安全性,MySQL5.7为root用户随机生成了一个密码,在error log中,关于error log的位置,如果安装的是RPM包,则默认是/var/log/mysqld.log。一般可通过log_error设置mysql> select @@log_error;+---------------------+| @@log_error |+----

2016-03-10 15:18:27 301

原创 CHECK_NRPE: Received 0 bytes from daemon. Check the remote server logs for error messages.

今天,在用icinga服务器端测试客户端脚本时,报如下错误:[root@mysql-server1 etc]# /usr/local/icinga/libexec/check_nrpe -H 192.168.244.146 -c check_users -a 10 20CHECK_NRPE: Received 0 bytes from daemon. Check the remote

2016-03-10 15:18:22 881

原创 MyCAT实现MySQL的读写分离

在MySQL中间件出现之前,对于MySQL主从集群,如果要实现其读写分离,一般是在程序端实现,这样就带来一个问题,即数据库和程序的耦合度太高,如果我数据库的地址发生改变了,那么我程序端也要进行相应的修改,如果数据库不小心挂掉了,则同时也意味着程序的不可用,而这对很多应用来说,并不能接受。引入MySQL中间件能很好的对程序端和数据库进行解耦,这样,程序端只需关注数据库中间件的地址,而无需知晓底层

2016-03-10 15:18:20 314

原创 搭建Spark的单机版集群

一、创建用户# useradd spark# passwd spark 二、下载软件JDK,Scala,SBT,Maven版本信息如下:JDK jdk-7u79-linux-x64.gzScala scala-2.10.5.tgzSBT sbt-0.13.7.zipMaven apache-maven-3.2.5-bin.tar.gz注意:如果只是安装S

2016-03-10 15:18:18 580

原创 如何部署Icinga服务端

Icinga是Nagios的一个变种,配置,使用方式几乎一样,而且完全兼容Nagios的插件。所以下面的部署方案对Nagios同样使用。它还推出了两个中文版本,icinga-cn原版和icinga-pnp4nagios-cn,前者和Nagios几乎一模一样,只不过界面是中文的,而后者则集成了php4绘图功能,能以图形化的方式呈现系统的监控信息,类似于Cacti。Icinga服务端一般是指其

2016-03-10 15:18:13 420

原创 MyCAT简易入门

MyCAT是mysql中间件,前身是阿里大名鼎鼎的Cobar,Cobar在开源了一段时间后,不了了之。于是MyCAT扛起了这面大旗,在大数据时代,其重要性愈发彰显。这篇文章主要是MyCAT的入门部署。一、安装java因Mycat是用java开发的,所以需要在实验环境下安装java,官方建议jdk1.7及以上版本Java Oracle官方下载地址为:http://www.oracle

2016-03-10 15:18:09 197

原创 如何部署Icinga客户端

Icinga客户端的部署相对于服务器端来说,简单很多。对于服务器端来说,如果要通过以下这种方式来监控服务器,必须包含三个组件,Icinga内核,Icinga插件,NRPE(Nagios Remote Plugin Executor)。对于Icinga客户端来说,只需要部署Icinga插件和NRPE。icinga 中文化项目的下载地址为:http://sourceforge.net/proj

2016-03-10 15:18:04 357

原创 MySQL监控利器-Innotop

Innotop是一款十分强大的MySQL监控工具,用perl所写,通过文本模式展示MysQL服务器和Innodb的运行状况。 安装innotop下载地址:https://github.com/innotop/innotopGithub上提供两种版本,一种是开发版(innotop-master),一种是稳定版(innotop-gtid)。在这里,我们使用的是开发版。注意:网上提供

2016-03-10 15:18:00 212

原创 MySQL的分页优化

今天下午,帮同事重写了一个MySQL SQL语句,该SQL语句涉及两张表,其中一张表是字典表(需返回一个字段),另一张表是业务表(本身就有150个字段,需全部返回),当然,字段的个数是否合理在这里不予评价。平时,返回的数据大概5w左右,系统尚能收到数据。但12月31日那天,数据量大概20w,导致SQL执行时间过长,未能在规定的时间内反馈结果,于是系统直接报错。一般的思路是用MySQL的分页功能

2016-03-10 15:17:55 197

原创 Java动态代理

主要使用了java.lang.reflect中的Proxy类,方法如下:static Object newProxyInstance(ClassLoader loader, Class[] interfaces, InvocationHandler h) 下面是利用JDBC做的测试,类似于重写了Connection的close方法。代码如下:package com.victor

2016-03-10 15:17:53 144

原创 如何在制作jar包时引用第三方jar包

我用的是Eclipse打包,但在CMD窗口执行的时候报“ActiveMQ.jar中没有主清单属性”错误。在网上搜了下,这个与MANIFEST.MF文件有关,该文件没有定义MAIN方法所在类的路径,利用好压打开jar包,果然如此。里面只有一行Manifest-Version: 1.0需添加Main-Class。在本例中,添加如下:Main-Class: com.luolu

2016-03-10 15:17:48 349

原创 利用Shell脚本将MySQL表中的数据转化为json格式

脚本如下:#!/bin/bashmysql -s -phello test >1.log EOFdesc t1;EOFlines="concat_ws(',',"count=`cat 1.log|wc -l`linenum=0while read linedo coloumname=`echo $line |awk '{print $1}'` let

2016-03-10 15:17:44 1566

原创 恢复MySQL主从数据一致性的总结

今日上午,同事告知,MySQL主从数据库的数据不一致,猜测备库在同步过程中出现了问题,于是,登上备库,使用 mysql> show slave status\G查看,果然,备库在insert语句中因违反主键约束,导致备库停止了同步。现在的问题很明确,就是如何恢复主从库数据的一致性。 可选方案如下:一、查看Master最新的Position,将其作为Slave复制的起点。这种思路体现

2016-03-10 15:17:41 352

原创 (转)运维角度浅谈MySQL数据库优化

转自:http://lizhenliang.blog.51cto.com/7876557/1657465一个成熟的数据库架构并不是一开始设计就具备高可用、高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善。这篇博文主要谈MySQL数据库发展周期中所面临的问题及优化方案,暂且抛开前端应用不说,大致分为以下五个阶段:1、数据库表设计  项目立项后,开发部根据产品部需求开发项目,开发工

2016-03-10 15:17:37 267

原创 JDBC常用API小结

建立数据库链接的三种方式:package com.victor_01;import java.sql.Connection;import java.sql.Driver;import java.sql.DriverManager;import java.sql.SQLException;import java.util.Properties;import o

2016-03-10 15:17:32 376

原创 基于表的数据字典构造MySQL建表语句

表的数据字典格式如下:如果手动写MySQL建表语句,确认麻烦,还不能保证书写一定正确。写了个Perl脚本,可快速构造MySQL脚本语句。脚本如下:  #!/usr/bin/perluse strict;my $line;while(){ s/\r\n//; if(/(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)

2016-03-10 15:17:28 942

原创 MySQL存储过程及触发器

一、存储过程存储过程的基本格式如下:-- 声明结束符-- 创建存储过程DELIMITER $ -- 声明存储过程的结束符CREATE PROCEDURE pro_test() --存储过程名称(参数列表)BEGIN -- 可以写多个sql语句; -- sql语句+流程控制 SELECT * FROM employee;END $

2016-03-10 15:17:24 193

原创 坑爹的Maven

之前没用过Maven,最近在研究Curator的时候,导入别人的工程,但是没有相应的包,需使用Maven解决依赖。于是各种折腾,最后虽然解决了,但中间的坑还不少。尽管网上也有相应的安装教程,但很多都是语焉不详,模棱两可,最后还是决定自己整理一下。一,下载Maven并配置相关的环境变量下载地址如下:http://maven.apache.org/download.cgi#解压,设置环

2016-03-10 15:17:19 244

原创 MySQL分区总结

MySQL支持RANGE,LIST,HASH和KEY四种分区。其中,每个分区又都有一种特殊的类型。对于RANGE分区,有RANGE COLUMNS分区。对于LIST分区,有LIST COLUMNS分区。对于HASH分区,有LINEAR HASH分区。对于KEY分区,有LINEAR KEY分区。具体如下: RANGE分区RANGE即范围分区,根据区间来判断位于哪个分区,譬如,在下例中,如

2016-03-10 15:17:14 248

原创 MySQL基于时间字段进行分区的方案总结

MySQL支持的分区类型一共有四种:RANGE,LIST,HASH,KEY。其中,RANGE又可分为原生RANGE和RANGE COLUMNS,LIST分为原生LIST和LIST COLUMNS,HASH分为原生HASH和LINEAR HASH,KEY包含原生KEY和LINEAR HASH。关于这些分区之间的差别,改日另写文章进行阐述。最近,碰到一个需求,要对表的时间字段(类型:datetim

2016-03-10 15:17:12 269

原创 MySQL中有关TIMESTAMP和DATETIME的总结

一、MySQL中如何表示当前时间?其实,表达方式还是蛮多的,汇总如下:CURRENT_TIMESTAMPCURRENT_TIMESTAMP()NOW()LOCALTIMELOCALTIME()LOCALTIMESTAMPLOCALTIMESTAMP() 二、关于TIMESTAMP和DATETIME的比较一个完整的日期格式如下:YYYY-MM-DD HH:

2016-03-10 15:17:08 177

原创 MySQL复合分区

到底还是开源软件,MySQL对复合分区的支持远远没有Oracle丰富。在MySQL 5.6版本中,只支持RANGE和LIST的子分区,且子分区的类型只能为HASH和KEY。譬如:CREATE TABLE ts (id INT, purchased DATE) PARTITION BY RANGE( YEAR(purchased) ) SUBPARTITION B

2016-03-10 15:17:05 354

原创 MySQL分区表的管理~2

一、维护分区对于表的维护,我们一般有如下几种方式: CHECK TABLE, OPTIMIZE TABLE, ANALYZE TABLE和REPAIR TABLE。而这几种方式,对于分区同样适用。下面,我们一一阐述各种的作用。1. Rebuilding partitions重建分区,它相当于先删除分区中的数据,然后重新插入。这个主要是用于分区的碎片整理。譬如:ALTER

2016-03-10 15:17:00 159

原创 MySQL分区表的管理~1

一、如何管理RANGE和LIST分区以该分区表为例CREATE TABLE members ( id INT, fname VARCHAR(25), lname VARCHAR(25), dob DATE)PARTITION BY RANGE( YEAR(dob) ) ( PARTITION p0 VALUES LESS THA

2016-03-10 15:16:58 195

原创 Oracle中如何实现Mysql的两表关联update操作

在看《MySQL 5.1参考手册》的时候,发现MySQL提供了一种两表关联update操作。原文如下:UPDATE items,month SET items.price=month.priceWHERE items.id=month.id;在MySQL中构造表验证了一下mysql> select * from test;+------+--------+| i

2016-03-10 15:16:53 252

空空如也

空空如也

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

TA关注的人

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