DataBase
文章平均质量分 89
数据库
ashui811
这个作者很懒,什么都没留下…
展开
-
centos7 mysql数据库安装和配置
一、系统环境yum update升级以后的系统版本为[root@yl-web yl]# cat /etc/redhat-release CentOS Linux release 7.1.1503 (Core) 二、mysql安装一般网上给出的资料都是#yum install mysql#yum install mysql-server#yum install mysq...转载 2018-11-12 14:08:46 · 128 阅读 · 0 评论 -
Mysql 5.7 Linux安装详细步骤
1、下载安装包http://dev.mysql.com/downloads/mysql/#downloads推荐下载通用安装方法的TAR包(http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.12-linux-glibc2.5-x86_64.tar)。2.检查库文件是否存在,如有删除。[root@localhost Desktop]$ rpm -...转载 2018-06-14 17:01:05 · 1208 阅读 · 0 评论 -
对mysql乐观锁、悲观锁、共享锁、排它锁、行锁、表锁概念的理解
记得在上大学那会开始,在大学的课堂上,常常会听到老师讲什么共享锁,排它锁各种锁的词汇,以前仅仅听过一次就没有管了,并没有进行深入的研究最近,在各种群里,又看见了什么乐观锁、悲观锁什么鬼的感觉很高级的词汇,于是乎今天对这几个概念进行学习,揭开它神秘的面纱,缕缕思路记录下我对这几个概念的想法实验环境:mysql5.6存储引擎:innoDB我们在操作数据库的时候,可能会由于并发问题而...转载 2019-06-28 16:52:29 · 107 阅读 · 0 评论 -
大数据高并发之-Mysql分表与分库使用场景以及设计方式
场景:对于大型的互联网应用来说,数据库单表的记录行数可能达到千万级甚至是亿级,并且数据库面临着极高的并发访问。采用Master-Slave复制模式的MySQL架构,只能够对数据库的读进行扩展,而对数据库的写入操作还是集中在Master上,并且单个Master挂载的Slave也不可能无限制多,Slave的数量受到Master能力和负载的限制。对于访问极为频繁且数据量巨大的单表来说,我们首先要做的...转载 2019-05-22 09:15:16 · 976 阅读 · 0 评论 -
MySQL的timestamp类型自动更新问题解决方案
原文链接:https://www.2cto.com/database/201711/694631.htmlMySQL的timestamp类型自动更新问题解决方案,在CREATE TABLE语句中,第1个TIMESTAMP列可以用下面的任何一种方式声明:1: 如果定义时DEFAULT CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP子句都有,列值为默认使用当...转载 2018-06-24 10:15:09 · 2647 阅读 · 0 评论 -
完全卸载mysql
1.管理工具---服务里面停止Mysql服务。2.控制面板---卸载Mysql,删除C:\Program Files\MySQL目录.3.这是最关键一步,只做前面两步,密码还是修改不了,因为MySQL 还有文件,也就是在C:\Documents and Settings\All Users\ApplicationData里面的MySQL文件夹,这个文件没有清除是MySQL重装出现旧密码的根源所在。...原创 2018-06-14 18:06:01 · 190 阅读 · 0 评论 -
mysql 的 find_in_set函数使用方法
举个例子来说:有个文章表里面有个type字段,他存储的是文章类型,有 1头条,2推荐,3热点,4图文 .....11,12,13等等现在有篇文章他既是 头条,又是热点,还是图文,type中以 1,3,4的格式存储.们我们如何用sql查找所有type中有4图文标准的文章呢??这就要我们的find_in_set出马的时候到了.以下为引用的内容转载 2017-05-26 18:13:45 · 1235 阅读 · 0 评论 -
group_concat()函数总结
group_concat(),手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果。比较抽象,难以理解。通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一组,将属于同一组的列显示出来。要返回哪些列,由函数参数(就是字段名)决定。分组必须有个标准,就是根据group by指定的列进行分组。group_concat函数应该是在内部执行转载 2017-05-26 18:12:16 · 624 阅读 · 0 评论 -
使用MYSQL实现Oracle的Start with...Connect By递归树查询
第一篇文章,从某个同行问我的问题开始。他的问题大概是这样的:自己已经用Oracle的Start with...Connect By实现了树的递归查询,但是现在要求变了,要用MYSQL也实现相同的递归查询树的功能。这个功能是我从以前从未使用到过的,于是,我上网查询、找了一些资料开始做了起来。我喜欢这种“自己每次在帮助了别人的同时又提高了自己”的进步,因为,我始终相信,会分享、会帮助别人的人注转载 2017-05-26 18:10:23 · 20084 阅读 · 3 评论 -
MySQL查询时区分大小写的方法
1、一种方法是可以设置表或行的collation,使其为binary或case sensitive。在MySQL中,对于Column Collate其约定的命名方法如下:*_bin: 表示的是binary case sensitive collation,也就是说是区分大小写的*_cs: case sensitive collation,区分大小写*_ci: case ins转载 2017-05-26 18:07:22 · 605 阅读 · 0 评论 -
oracle索引总结
简介1.说明 1)索引是数据库对象之一,用于加快数据的检索,类似于书籍的索引。在数据库中索引可以减少数据库程序查询结果时需要读取的数据量,类似于在书籍中我们利用索引可以不用翻阅整本书即可找到想要的信息。 2)索引是建立在表上的可选对象;索引的关键在于通过一组排序后的索引键来取代默认的全表扫描检索方式,从而提高检索效率 3)索引在逻辑上和物理上都与相关的表和数据无关,当创建或者...转载 2018-11-21 16:40:16 · 88 阅读 · 0 评论 -
Oracle表分区分为四种:范围分区,散列分区,列表分区和复合分区
一:范围分区就是根据数据库表中某一字段的值的范围来划分分区,例如:Sql代码 createtablegraderecord ( snovarchar2(10), snamevarchar2(20), dormitoryvarchar2(3), gradeint ) partitionbyrange(grad...转载 2018-11-12 16:58:30 · 2083 阅读 · 0 评论 -
oracle 中如何查看某个表所涉及的存储过程
SELECT DISTINCT * FROM user_sourceWHERE TYPE = 'PROCEDURE'AND upper(text) LIKE '%PS_KL_ABS_002_DATA%';原文链接:https://www.cnblogs.com/feng666666/p/7058122.html转载 2018-07-31 09:09:52 · 27058 阅读 · 0 评论 -
Oracle decode和nvl 函数的用法及区别?
Decodedecode(条件,值1,翻译值1,值2,翻译值2,...,缺省值) 该函数与程序中的 If...else if...else 意义一样NVL格式:NVL( string1, replace_with)功能:如果string1为NULL,则NVL函数返回replace_with的值,否则返回string1的值,如果两个参数都为NULL ,则返回NULL。注意事项:string1和...转载 2018-06-25 18:04:48 · 1586 阅读 · 0 评论 -
Oracle监听器的功能原理
原文链接:https://blog.csdn.net/qq_25252357/article/details/73369351以前连接远程数据库以为客户端和服务器端都要配置Oracle监听器,现在研究了一下Oracle监听器,才了解不是这样的。一、Oracle监听器(LISTENER)Oracle监听器是做什么的呢?它设置在服务端,是基于服务端的一种网络服务,用于监听客户端向数据库端发出的连接请求...转载 2018-06-25 09:44:01 · 7054 阅读 · 0 评论 -
Oracle管理员密码恢复
①搜索名为PWDsidname.ora文件②备份后删除该文件③生成新的密码文件,在dos控制台下输入命令:orapwd file=oldpasswordfilepath/PWDsidname.ora password=newpassword entries=x(x表示登录sys的最多用户数)④重启数据库实例...原创 2018-06-24 23:24:01 · 156 阅读 · 0 评论 -
监听配置问题,SID(实例名)与SERVICE_NAME的区别?
原文链接:https://blog.csdn.net/qq_26991807/article/details/71217545这几天因为要连接远程oracle数据库,直接在本地安装好了oracle11g客户端后,环境变量配置完成,按以往的习惯用Net Configuration Assistant 进行了连接配置设置,生成了对应的监听文件。但是在NetManager 中进行连接测试的额时候始终连...转载 2018-06-24 22:07:56 · 1058 阅读 · 0 评论 -
闪回(关于闪回表)
--整理以前的学习笔记闪回表是基于undo data的SQL> connemr3/emr3@112已连接。SQL> flashback table hl_binglimb to timestamp(to_date('2012-10-18 23:59:59','yyyy-mm-dd hh24:mi:ss'));flashback table hl_binglimb to timesta...转载 2018-06-09 22:48:16 · 1185 阅读 · 0 评论 -
ORA-01439:要更改数据类型,则要修改的列必须为空
假设字段有数据,则改为varchar2(40)执行时会弹出:“ORA-01439:要更改数据类型,则要修改的列必须为空”,这时要用下面方法来解决这个问题:/*修改原字段名name为name_tmp*/alter table tb rename column name to name_tmp;/*增加一个和原字段名同名的字段name*/alter table tb add name varchar2...转载 2018-06-09 19:53:19 · 1104 阅读 · 0 评论 -
oracle取当前日期前一周的各天
select to_char(TRUNC(sysdate)-interval '7' day + LEVEL,'yyyy-MM-dd') AS FDATE from dual CONNECT BY LEVEL <= 7;比如今天是2017-12-29如果是不包含今天的前一周select to_char(TRUNC(sysdate)-interval '7' day + LEVEL...转载 2018-05-18 09:58:36 · 2441 阅读 · 0 评论 -
SQL 优化原则
一、问题的提出 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的最主要的问题之一。系统优化中一个很重要的方面就是SQL语句的优化。对于海量数据,劣质SQL语句和优质SQL语句之间的速度差别可以达到上百倍,可见对于一个系统不是简单地...转载 2018-05-17 12:43:11 · 114 阅读 · 0 评论 -
oracle行转列函数WMSYS.WM_CONCAT 用法
select t.rank, t.Name from t_menu_item t;10 CLARK10 KING10 MILLER20 ADAMS20 FORD20 JONES20 SCOTT20 SMITH30 ALLEN30 BLAKE30 JAMES30 MARTIN30 TURNER30 WARD-------------转载 2018-01-09 17:36:54 · 331 阅读 · 0 评论 -
oracle获取某时间段内的年份、月份、日期列表
原文链接:http://blog.csdn.net/jumtre/article/details/46345733获取日期列表:[sql]view plaincopySELECTTO_CHAR(TO_DATE('2014-10-01','yyyy-MM-dd')+ROWNUM-1,'yyyyMMdd')asdaylist FROMDUAL ...转载 2017-08-29 09:30:42 · 1436 阅读 · 0 评论 -
详解not in与not exists的区别与用法(not in的性能并不差)
在网上搜了下关于oracle中not exists和not in性能的比较,发现没有描述的太全面的,可能是问题太简单了,达人们都不屑于解释吧。于是自己花了点时间,试图把这个问题简单描述清楚,其实归根结底一句话:not in性能并不比not exists差,关键看你用的是否正确。我先建两个示范表,便于说明:create tableljn_test1 (col num转载 2017-08-28 09:28:26 · 5842 阅读 · 0 评论 -
创建子分区模板及使用subpartitions 方法快速添加子分区
原文链接:http://blog.csdn.net/hj402555749/article/details/12097025一、使用模板创建子分区/*drop table T_LOCRECORD_HJ purge ;*/create table T_LOCRECORD_HJ( id VARCHAR2(36) not null, device_i转载 2016-08-30 17:48:50 · 2856 阅读 · 0 评论 -
ORACLE创建按月和按天的自动递增分区
原文链接:http://blog.chinaunix.net/uid-21943216-id-4062400.html一、建按月自增分区表:1.1建表SQL> create table month_interval_partition_table (id number,time_col date) partition by range(time_col) 2 interval转载 2016-08-30 14:59:42 · 24117 阅读 · 1 评论 -
oracle 分组后取每组第一条数据
数据格式分组取第一条的效果sql SELECT * FROM (SELECT ROW_NUMBER() OVER(PARTITION BY x ORDER BY y DESC) rn, test1.* FROM test1) WHERE r转载 2016-08-15 17:09:53 · 7512 阅读 · 0 评论 -
Oracle的SQL语句中如何处理‘&’符号
在Oracle中,如果在sql中出现'&'符号,会被自动转义;而被要求输入在&符号后跟随的字符串的值,例如:update tablename set columnName='http://www.g.cn/cv2.jsp?spid=222&cid=333';执行这个操作时,Oracle会提示Enter value for cid:原因是在Ora转载 2016-08-11 11:16:16 · 508 阅读 · 0 评论 -
START WITH CONNECT BY PRIOR子句实现递归查询
原文链接:http://jingyan.baidu.com/article/5d368d1e182bb93f60c05784.htmlSTART WITH CONNECT BY PRIOR这个语法主要用于查询数据包中的树型结构关系。先看下原始数据时怎么样的吧!表中第一行1001是1002的父节点,而第二行1002又是1003的父节点,如此循环。如题:要求给出其中一个转载 2016-06-18 22:52:55 · 328 阅读 · 0 评论 -
关于oracle with as用法
with as语法–针对一个别名with tmp as (select * from tb_name)–针对多个别名with tmp as (select * from tb_name), tmp2 as (select * from tb_name2), tmp3 as (select * from tb_name3), …转载 2016-06-18 22:40:54 · 2772 阅读 · 1 评论 -
把excel中的数据粘贴到PLSQL Developer中
先在plsql dev中把表结构给建好,然后在plsql dev中select * from xxx for update,点击那个小锁,选中第一列全部,然后从excel完全复制再粘帖提交即可原创 2016-05-17 17:58:34 · 14072 阅读 · 1 评论 -
解决PLSQL记录被另一个用户锁住的问题
1、查看数据库锁,诊断锁的来源及类型:select object_id,session_id,locked_mode from v$locked_object;或者用以下命令:select b.owner,b.object_name,l.session_id,l.locked_mode from v$locked_object l, dba_objects b where b原创 2016-04-12 14:38:58 · 23386 阅读 · 0 评论 -
CASE WHEN 及 SELECT CASE WHEN的用法
Case具有两种格式。简单Case函数和Case搜索函数。简单Case函数CASEsexWHEN'1'THEN'男'WHEN'2'THEN'女'ELSE'其他'END--Case搜索函数CASEWHENsex ='1'THEN'男'WHENsex ='2'THEN'女'ELSE'其他'END种转载 2016-04-05 18:03:52 · 685 阅读 · 0 评论 -
Oracle插入表中不存在的记录
最近在做项目的过程中遇到一个需求,要求插入一条数据,如果这条数据中的某个字段在表中存在则不插入,反之则插入,上网搜了一下发现insert语句是不支持where的,找了许久终于找到了答案:INSERT INTO table_name select column1,column2... from dual where not exists(select 1 from table_name where原创 2016-03-23 13:57:48 · 1518 阅读 · 0 评论 -
在Linux下安装配置Oracle11g R2
最近在安装Linux下的Oracle环境,折腾了很久,遇到了不少问题,最后终于搞定了,于是写下此文,记录安装过程,以备后用。1.Linux环境配置准备环境:Linux:Redhat Enterprise 5.4,DB:Oracle 11g R2 X64,Oracle安装到/home/oralce_11目录下。配置过程如下:(大部分是网上的内容,个人也是按照网上步骤来的)转载 2016-03-20 00:27:42 · 507 阅读 · 0 评论 -
查询与修改Oracle字符集
一、什么是oracle字符集 Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系。ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据。它使数据库工具,错误消息,排序次序,日期,时间,货币,数字,和日历自动适应本地化语言和平台。 影响oracle数据库字符集最重要的参数是NLS_LANG参数。 它转载 2016-03-19 23:54:00 · 420 阅读 · 0 评论 -
oracle中exp,imp的使用详解
基本语法和实例: 1、EXP: 有三种主要的方式(完全、用户、表) 1、完全: EXP SYSTEM/MANAGER BUFFER=64000 FILE=C:\FULL.DMP FULL=Y 如果要执行完全导出,必须具有特殊的权限 2、用户模式: EXP SONIC/转载 2016-03-19 23:41:06 · 230 阅读 · 0 评论 -
Oracle没有UPDATE FROM 的解决方法
Oracle没有update from语法,可以通过两种写法实现同样的功能:1:子查询UPDATE A SET A.NAME=(SELECT B.NAME FROM B WHERE B.ID=A.ID),本查询要根据具体情况看看是否变通成如下(1)单列UPDATE ASET A.NAME=(SELECT B.NAME FROM B WHERE B.ID=A.ID)WHE原创 2016-02-29 23:19:55 · 2004 阅读 · 0 评论 -
Oracle中的EXISTS与IN
项目中对数据库的查询操作很多,各种拼接,各种in,但由于in的内容受字符限制,所以有些地方将in改成了Extist,两种写法有什么关联,查了写资料,分析看看: in针对in很好理解,Sql代码select*fromT1whereT1.ain(selectT2.afromT2)”Sql代转载 2016-02-29 23:03:59 · 318 阅读 · 0 评论 -
win64使用PLSQL工具导入Excel数据
用PLSQL的ODBC工具导入excel的时候,点连接出现以下错误:原因是PLSQL是32位的,而系统是64位的,出现了兼容性问题,解决办法如下:1.在C:\Windows\SysWOW64路径下找到odbcad32.exe打开2.点击添加,选择Microsoft Excel Driver(*.xls)3.点击完成,在弹出的对话框中的数据源名称后写上 MY excel,版本选择Ex...原创 2016-01-20 10:29:51 · 1345 阅读 · 0 评论