
DB
dataee
解决方案咨询
大数据处理
系统架构
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Oracle Merge into介绍
MERGE语句是Oracle9i新增的语法,用来合并UPDATE和INSERT语句。通过MERGE语句,根据一张表或子查询的连接条件对另外一张表进行查询,连接条件匹配上的进行UPDATE,无法匹配的执行INSERT。这个语法仅需要一次全表扫描就完成了全部工作,执行效率要高于INSERT+UPDATE。 语法:MERGE INTO [your table-nam...2013-03-30 11:00:33 · 122 阅读 · 0 评论 -
Mysql之字符串编码设置
mysql的编码涉及如下:1.client2.mysqld3.mysql修改默认为utf8修改my.cnf:--在 [mysqld] 标签下:default-character-set = utf8character_set_server = utf8--在 [mysql] 标签下:default-character-set = utf8 ...2014-09-30 15:41:04 · 172 阅读 · 0 评论 -
Mysql之rand()随机取数
需求:随机读取表的一条记录数据准备:1.表结构mysql> desc tb_random;+-------+--------------+------+-----+---------+----------------+| Field | Type | Null | Key | Default | Extra |+-------...2015-06-29 16:15:04 · 549 阅读 · 0 评论 -
Mysql之禁用远程链接
mysql为了安全期间有时候不允许远程链接,方案为直接修改配置文件:1.vi /usr/share/mysql/my.cnf 在[mysqld]下加入:bind-address = 127.0.0.12.重启:/etc/init.d/mysqld restart...2015-05-28 18:41:21 · 492 阅读 · 0 评论 -
Mysql函数之mysqldump参数说明
mysqldump的参数说明如下:mysqldump [OPTIONS] database [tables] 如果你不给定任何表,整个数据库将被导出。 通过执行mysqldump --help,你能得到你mysqldump的版本支持的选项表。 注意,如果你运行mysqldump没有--quick或--opt选项,mysqldump将在导出结果前装载整个结果集到内存中,...2015-05-15 18:02:59 · 190 阅读 · 0 评论 -
Mysql函数之replace
需求:字符串替换,replace 贼好用使用:update lesson set url=replace(url,'http://www.baidu.com','http://www.linkrmb.com')2015-05-11 15:10:00 · 116 阅读 · 0 评论 -
Mysql之数据库克隆
需求:1.对一个已经存在的数据库做完整的拷贝实现:基于mysqldump mysqldump db -u root -proot123 | mysql dbclone -u root -proot123其实就是利用mysqldump导出数据然后mysql执行 ...2015-04-12 12:01:29 · 2942 阅读 · 0 评论 -
MySQL之“Can’t create/write to file /data/db.txt (Errcode: 13)”错误
基于mysql的outfile进行数据备份操作的时候报如下问题:Can’t create/write to file /data/db.txt (Errcode: 13)问题原因:路径权限不够解决方式:chown mysql:mysql /datamysql默认的用户和组分别为mysql...2015-04-09 13:55:11 · 1414 阅读 · 0 评论 -
mysqlbinlog: unknown variable 'default-character-set=utf8'
采用mysql日志查看工具进行查看操作命令的时候报如下错误:mysqlbinlog: unknown variable 'default-character-set=utf8'解决方式:mysqlbinlog --no-defaults xxx加上 --no-defaults即可...2015-04-09 13:51:37 · 134 阅读 · 0 评论 -
Mysql之默认存储引擎设置及root用户密码添加
1.默认存储引擎设置:mysql默认存储引擎设置是在配置文件的[mysqld],设置成InnoDB[mysqld]default-storage-engine=InnoDB然后重启服务查看:show variables like'storage_engine';2.mysql默认安装的root无密码,root登陆之后执行设置密码即可:update mysql.use...2014-09-30 16:05:02 · 109 阅读 · 0 评论 -
Mysql之字段字符串拼接
需求:mysql的字符串拼接实现:concat(str1,str2,str3)concat_ws(separator,str1,str2,str3)实现中只需要注意null的问题,说明如下:concat()中只要有一个字符串为null那么返回值为nullconcat_ws():1.separator为null时返回为null2.其他字符串为null的时候直接...2015-08-12 17:23:14 · 903 阅读 · 0 评论 -
Mysql之修改表的编码字符集
--改变表的编码,为utf8mb4alter table `someabcd_cms` convert to character set utf8mb4;除此之外还需要注意配置文件相关的支持[client] default-character-set = utf8mb4 [mysql] default-character-set = utf8mb4 [mysql...2018-05-18 13:38:53 · 663 阅读 · 0 评论 -
Mysql之取整函数
Mysq的两个取整函数:ceil():向上取整floor():向下取整round():四舍五入 mysql> select ceil(10/11),floor(10/11),round(10/20);+-------------+--------------+--------------+| ceil(10/11) | floor(10/11) | round(...2017-07-26 17:46:19 · 573 阅读 · 0 评论 -
Mysql之存储过程“模糊查询drop表”
需求:清空 show tables like "%2016%"实现:DELIMITER // drop procedure if exists p_clean_table;create PROCEDURE p_clean_table(in tab varchar(128))begin DECLARE name VARCHAR(64); -- 遍...2016-03-26 19:31:46 · 720 阅读 · 0 评论 -
Mysql之存储过程错误:ERROR 1337 (42000): Variable or condition declaration after cursor
错误信息:ERROR 1337 (42000): Variable or condition declaration after cursor or handle错误原因:所有的声明变量应该放到游标后解决: DECLARE name VARCHAR(64); -- 遍历数据结束标志 DECLARE done INT DEFAULT FALSE;...2016-03-26 19:28:18 · 1339 阅读 · 0 评论 -
Mysql之ERROR 1010 (HY000)
删除db的时候报错如下:ERROR 1010 (HY000): Error dropping database (can't rmdir './yourdb/', errno: 17)原因:1.数据库目录中有对应的非表文件的其他文件,如导出数据的sql或者txt数据2.db目录被占用解决:1.删除不相干的其他文件执行drop database 即可...2016-12-03 17:20:25 · 1507 阅读 · 0 评论 -
Mysql之模糊查询防注入方法
需求:sql like查询的时候有时候直接拼接容易被注入解决方式:利用concat方法String sql="select * from student where name like concat('%'," + name + ",'%') ";2015-11-17 16:53:29 · 1346 阅读 · 0 评论 -
Mysql之日期处理(日期,数值,字符串)
需求:涉及数字,字符串,date之间转换的几个函数解析:from_unixtime:从数字往date转换STR_TO_DATE:从字符串往date转换unix_timestamp:从date类型的字符串或者date往数字转换 unix_timestamp:unix_timestamp(),unix_timestamp(date) select unix_t...2015-10-22 15:35:20 · 501 阅读 · 0 评论 -
mysql查询锁表
需求:查询mysql那些表被锁了,然后解锁命令:show OPEN TABLES where In_use > 0;解锁的话采用kill命令show processlist;kill id2015-09-26 11:26:40 · 161 阅读 · 0 评论 -
mongoDB之Replica Set集群安装
Replica Set准确讲不完全是集群,只是一个主从复制的加强版概念如下:primary:主节点客户端写操作发生在这里。secondary:副本,可以负载读操作,通过复制primary的oplog来实现数据同步arbiter:仲裁节点,作用是当primary宕掉之后从secondarys选择一个变成primary 环境准备:linux系统版本: $ cat...2015-04-03 17:04:15 · 163 阅读 · 0 评论 -
Mysql之mysqldump数据导入导出
利用mysqldump进行mysql的数据导入导出,全部以语句的形式存在一、导出数据 命令行下具体用法如下: $>mysqldump -u用户名 -p密码 [-d] 数据库名 表名 > 脚本名; 1、导出数据库为db的表结构(其中用户名为root,密码为pwd,生成的脚本名为db.sql) $>mysqldump -uro...2014-09-04 11:59:41 · 313 阅读 · 0 评论 -
Oracle中connect by...start with...的使用
一、语法 大致写法:select * from some_table [where 条件1] connect by [条件2] start with [条件3]; 其中 connect by 与 start with 语句摆放的先后顺序不影响查询的结果,[where 条件1]可以不需要。 [where 条件1]、[条件2]、[条件3]各自作用的范围都不相同:[条件1]是在根...2013-05-14 20:57:24 · 90 阅读 · 0 评论 -
小文件系统调研
场景需求:涉及文件如下:1.大量的用户头像;2.大量的用户通过web层上传的word文档;业务如下:1.上述文件需要进行存储,也就是小文件存储;2.同时各个web层的节点能够读到;3.能够对文件进行crud; 调研开源产品列表如下:TFSFastDFSMongoDB对比一览表:开源产品TFSFastDFSMongoDB ...原创 2013-05-08 11:15:08 · 128 阅读 · 0 评论 -
mysql之status和variables区别
首先可以通过下属两个命令来查看mysql的相应的系统参数show status like '%abc%';show variables like '%abc%';但是很多人不明白二者到底有什么区别status是状态是系统的状态不可更改,是系统现在的运行状态参数,说明如下:mysql> show status like 'innodb_rows_%';+-----------...2013-04-12 22:29:04 · 128 阅读 · 0 评论 -
数据库水平拆分和垂直拆分区别
案例: 简单购物系统暂设涉及如下表:1.产品表(数据量10w,稳定)2.订单表(数据量200w,且有增长趋势)3.用户表 (数据量100w,且有增长趋势)以mysql为例讲述下水平拆分和垂直拆分,mysql能容忍的数量级在百万静态数据可以到千万垂直拆分:解决问题:表与表之间的io竞争不解决问题:单表中数据量增长出现的压力方案:把产品表和用户表放到一个server上订单表单独放到一个serve...2013-04-11 20:11:15 · 140 阅读 · 0 评论 -
数据库切分之垂直切分
数据库切分的垂直切分是根据业务而定的,就是把一个系统所涉及到的表根据业务拆分成多个类,然后没类放到一个server上去,就会出现T1,T2,T3这三个表分表放在不同的服务器上,这个叫水平拆分,根据是T1,T2,T3几乎没有关联查询。 垂直切分的优点:数据库的拆分简单明了,拆分规则明确;应用程序模块清晰明确,整合容易;数据维护方便易行,容易定位。 垂直切...2013-04-09 18:47:16 · 148 阅读 · 0 评论 -
数据库切分之水平切分
水平切分的目的是为了控制单表记录数,从而保证同一类型的数据散列到不同的表或者不同的库中。 数据库水平切分就是对某个表按照路由规则存储在多个表中,如表T会拆分成T1,T2,T3这些表也有可能存储在不同的库中,也有可能存储在同一个库中,如T表分别存在server1.T,server2.T中。水平切分的优点:不会存在某些超大型数据量和高负载的表遇到瓶颈的问题;基本上较难遇...2013-04-09 18:40:59 · 176 阅读 · 0 评论 -
mysql的字符串匹配
需求表数据如下:mysql> select * from test;+----+-------+| id | name |+----+-------+| 1 | abc** |+----+-------+1 row in set (0.00 sec) 我想匹配 abcde,也就是一个*代表一个字符分析:在正则中*代表0个或者多个,因此此处的存储有问题...2013-04-08 22:14:24 · 311 阅读 · 0 评论 -
五大流行的数据库模型
第一类关系模型描述:关系模型使用记录(由元组组成)进行存储,记录存储在表中,表由架构界定。表中的每个列都有名称和类型,表中的所有记录都要符合表的定义。SQL是专门的查询语言,提供相应的语法查找符合条件的记录,如表联接(Join)。表联接可以基于表之间的关系在多表之间查询记录。特点:1.表中的记录可以被创建和删除,记录中的字段也可以单独更新。2.关系模型数据库通常提供事务处理机制,这为涉及多条记录的...2013-04-08 22:12:05 · 311 阅读 · 0 评论 -
"MySQL新技术探索与实践"分享总结
概述:此分享是关于MySQL新技术探索与实践的分享汇总 汇总点:MySQL分支:MariaDB、Drizzle新技术:Memcached ;以Flashcache为代表的二级缓存架构;以Fusion-IO为代表的PCI-E SSD等使用ICC编译Mysql,目的是引入三方Patch或修改源码同时提升效率;ICC编译版本效果高于GCC;EXT3不太兼容SSD设备,同...2013-06-19 11:39:49 · 154 阅读 · 0 评论 -
memcached.c:657: error: 'IOV_MAX' undeclared (first use in this function)
memcached安装碰到如下问题:memcached.c:657: error: 'IOV_MAX' undeclared (first use in this function)问题定位:查看memcached.c,搜索IOV_MAX,可以看到它是这样使用的:#if defined(__FreeBSD__) || defined(__APPLE__)# define IO...2013-12-05 18:16:10 · 1298 阅读 · 0 评论 -
Java操作MDB文件
需求:mdb文件此类的数据文件在保密性要求高的时候cp比较容易,或者以此文件作为mis的存储文件或者桌面存储文件也不失为一种很好的选择。那么用java如何操作他们呢?实现:lib依赖:<dependency> <groupId>org.hsqldb</groupId> <artifactId>hsqldb</artif...2014-04-02 16:37:00 · 566 阅读 · 0 评论 -
Mysql之if,ifNull和数值型判断
Mysql之ifselect if(sex=0,'女','男') from p--IF(exPR1,expr2,expr3) 如果 expr1 是TRUE (expr1 <> 0 and expr1 <> NULL),则 IF()的返回值为expr2; 否则返回值则为 expr3。Mysql之ifnull:select IFNULL(name,'某人') ...2014-08-08 11:06:47 · 1235 阅读 · 0 评论 -
Mysql之基于模板创建表结构
需求:如果表不存在那么基于模板创建表结构,不包括索引CREATE TABLE IF NOT EXISTS teacher_his LIKE teacher基于teacher模板创建表结构2014-12-28 17:18:27 · 696 阅读 · 0 评论 -
Mysql之客户端navicat
Mysql客户端navicat自带注册机,使用方式1.安装客户端2,点击注册机选择执行文件,然后就ok了软件参见附件链接:http://url.cn/b0GeIX2014-12-26 15:52:00 · 121 阅读 · 0 评论 -
mysql之修改密码启动生效
需求:修改mysql的用户名密码然后生效实现:1.修改操作:update mysql.user set password=PASSWORD('hive123') where user='hive'; 把hive的用户密码修改为hive1232.生效刷新操作:flush privileges ps:好多人忘记第二步骤了,因此修改后不生效...2014-06-11 16:17:04 · 1476 阅读 · 0 评论 -
Spirng注解和dbutils集成
背景:操作关系型数据库的框架很多,其实最好的是jdbc不过开发量稍高那么有没有其他的相对合适的框架呢?此处选择了dbutils。那么就需要spring和dbutils集成,对事务要求不高,基于spring注解集成环境:<dependency> <groupId>org.springframework</groupId> <artifa...2014-01-07 18:38:42 · 202 阅读 · 0 评论 -
数据仓库基本架构描述
数据仓库的目的是为了分析最终支持决策,其本身仅仅是存储数据,尽可能的保证数据的细粒度,数据从源头经过ETL然后达到DW,然后再次经过ETL达到ODS或者直接达到应用分析层,然后支持分析。其描述图如下所示: 源头:包括各种结构化、半结构化和非结构化数据。结构化也就是我们传统机遇ER模型的数据;半结构化类似xml、json型数据,通过属性描述含义;非结构化也就是图片,无...2013-12-29 22:19:56 · 587 阅读 · 0 评论 -
E-R模型概述
ER模型为db中的一个概念模型,也可用于dw中,ER模型包括如下三部分:1.实体:业务模型的对象抽象,包括属性和关系2.属性:实体的细节描述,也就是特征一个实体有多种属性来描述3.关系:也就是实体之间的关系,在图库中关系着重区别于实体,也就是说关系是也是一种实体,也有属性,在dbms中关系是又实体中的属性来标示的。举例如下:显示中人物张三跟李四是好友那么他们的描述如下:d...2013-12-29 21:51:17 · 621 阅读 · 0 评论 -
Mysql之Incorrect string value: '\xF0\x9F\x98\x89 \xE6...'
错误信息如下:Incorrect string value: '\xF0\x9F\x98\x89 \xE6...'问题产生的原因是字符串不兼容4字节的unicode导致的,一般我们常见的表情编码等解决方案:1.数据库支持,配置文件是my.cnf[client] default-character-set = utf8mb4 [mysql] default-char...2018-05-18 13:44:51 · 2087 阅读 · 0 评论