数据库
沈万三gz
浮躁一分,到处遍招尤悔因循二字,从来误尽英雄。
展开
-
postgrepsql 时间转换
一、unix时间转字符串时间1.SELECT TIMESTAMP WITH TIME ZONE 'epoch' + 1491373612 * INTERVAL '1 second'; 2.select to_char(to_timestamp(time),'yyyy-MM-dd HH24-MI-SS') as time from tablename;转载 2017-04-05 15:31:47 · 5146 阅读 · 0 评论 -
MySQL user表简介
mysql> DESC MYSQL.USER \G*************************** 1. row *************************** Field: Host Type: char(60) Null: NO Key: PRIDefault: Extra:***************************转载 2016-01-25 19:56:34 · 540 阅读 · 0 评论 -
mysql查询结果导出文件,导入文件
mysql查询结果导出/输出/写入到文件方法一:直接执行命令:mysql> select count(1) fromtable into outfile'/tmp/test.xls';Query OK, 31 rows affected (0.00 sec)在目录/tmp/下会产生文件test.xls遇到的问题:mysql> select count(1) fromt转载 2015-12-23 15:18:17 · 913 阅读 · 0 评论 -
MySQL中的insert ignore into, replace into等的一些用法总结
在MySQL中进行条件插入数据时,可能会用到以下语句,现小结一下。我们先建一个简单的表来作为测试:CREATE TABLE `books` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(200) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `NewIndex1` (`n转载 2016-01-07 15:57:58 · 846 阅读 · 0 评论 -
mysql一个数据库允许存放多少个表?数据库里表多少个才合理?
mysql的配置项里是否有对一个数据库中,是否有最大数据表的限制,后面查询了相关资料,才发现,mysql数据库中,对单个数据库中的最大允许建立的数据表是没有配置项,也就是说没有限制的。mysql单数据库对数据表限制数量的问题:1.一个数据库是没有表现值的,或者说这个被限制的值很大2.一个mysqld服务可以支持的表对象数量是,42亿多点,所以这个限制基本上不需要考虑 从性能转载 2015-12-19 13:42:13 · 25236 阅读 · 0 评论 -
mysql取内容时先order by后group by
在mysql里取数据时怎么先order by后group by?其实很简单,sql语句如下:select count(count_filed) from (select * from table order by order_by_filed) table group by group_by_field;这样就可以实现对group by里的内容排序。实质是多层嵌套及子查询,将原转载 2016-01-03 10:58:38 · 5396 阅读 · 0 评论 -
MySQL执行外部sql脚本文件的命令
sql脚本是包含一到多个sql命令的sql语句,我们可以将这些sql脚本放在一个文本文件中(我们称之为“sql脚本文件”),然后通过相关的命令执行这个sql脚本文件。基本步骤如下:1、创建包含sql命令的sql脚本文件文件中包含一些列的sql语句,每条语句最后以;结尾,文件内容示例如下:--创建表,使用“--”进行注释create table 表名称(转载 2015-12-14 08:59:00 · 404 阅读 · 0 评论 -
解决MySQL错误reading initial communication packet_MySQL的两种方法
打开MYSQL的时候提示reading initial communication packet,而且网站访问出现如题reading initial communication packet(2013)错误,处理方法一:查找MYSQL配置文件:检查my.cnf,发现innodb_buffer_pool_size = 18M 设置过小,调整为innodb_buffer_pool_si转载 2015-12-10 20:20:45 · 24543 阅读 · 0 评论 -
mysql函数之比较函数
一、比较规则 MySQL按照以下规则进行数值比较: 若有一个或两个参数为 NULL,除非NULL-safe 等算符,则比较运算的结果为NULL。 若同一个比较运算中的两个参数都是字符串,则按照字符串进行比较。 若两个参数均为整数,则按照整数进行比较。 十六进制值在不需要作为数字进行比较时,则按照二进制字符串进行处理。 假如参数中的一个为 TIMESTAMP 或 DATETIME转载 2015-12-10 20:15:52 · 2074 阅读 · 0 评论 -
MYSQL中的单引号学习
1、Esc键下面的那个键:`反单引号是用来引在表名、字段名外面的,当表名、字段名不是保留单词、不是英文以外的其它语言、符合用户自定义标识符的规范,那么是可以不用它的。2.而'单引号(双引号效果一样)是用来引在字符串常量外面的,任何时候的表名、字段名外面都不能出现单引号,否则就是语法错误。3、如果字段名或者字符值本身含有单双引号特殊字符,则需要使用转义符号对其进行转义使用:\转载 2015-12-08 14:31:47 · 1005 阅读 · 0 评论 -
数据库表及字段命名规范
1.数据库表命名规范:(1)表名前应该加上前缀,表的前缀一个用系统或模块的英文名称缩写,前缀全部大写或首字母大写,表名中包含的单词首字母大写。(2)数据库表名应该有意义,并且易于理解,最好使用可以表达功能的英文单词或缩写,如果用英文单词表示,建议使用完整的英文单词。(3)表名不可以太长,最好不要超过3个英文单词长度(22个字母)。(4)在数据库表命名时应该用英文单词的单转载 2015-12-08 15:22:30 · 2774 阅读 · 0 评论 -
PostgreSQL触发器
1 触发器概述 触发器的功能就是为了解决这类问题而设计的,当你更新或查询某个资料表时会触动触发器,触发器就会照您所设计的流程,同步去插入、更新、删除其他资料,你不再需要重复下达多次的SQL命令就能达成一连串资料的同步处理。 触发器是某个数据库操作发生时被自动调用的函数。可以在INSERT、UPDATE或DELETE操作之前或之后调用触发器。PostgreSQL支持转载 2016-12-09 14:36:56 · 2547 阅读 · 0 评论 -
主从复制
1 主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库;主数据库一般是实时的业务数据库,从数据库的作用和使用场合一般有几个:一是作为后备数据库,主数据库服务器故障后,可切换到从数据库继续工作;二是可在从数据库作备份、数据统计等工作,这样不影响主数据库的性能;2 读写分离,是指读与写分别使用不同的数据库,当然一般是在不同服务器上的;在同一台服务器上的转载 2016-06-18 11:24:12 · 480 阅读 · 0 评论 -
Redis学习(一)
Redis 发布订阅Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。Redis 客户端可以订阅任意数量的频道。下图展示了频道 channel1 , 以及订阅这个频道的三个客户端 —— client2 、 client5 和 client1 之间的关系:当有新消息通过 PUBLISH 命令发送给频道 channel1转载 2016-06-18 11:18:31 · 437 阅读 · 0 评论 -
Redis学习手册
Redis 为什么要用 6379 作为默认端口?作者antirez.个意大利人,意大利有个showgirl叫MERZ,作者非常反感她。6379是MERZ四个字母在手机键盘上的位置(要9格的那种输入法哦,中文输入法大都是9格的)memcahce 默认端口是11211。一、简介: 在过去的几年中,NoSQL数据库一度成为高并发、海量数据存储解决方案的代名转载 2016-06-18 11:15:44 · 429 阅读 · 0 评论 -
MySQL MERGE存储引擎 简介
MERGE存储引擎把一组MyISAM数据表当做一个逻辑单元来对待,让我们可以同时对他们进行查询。构成一个MERGE数据表结构的各成员MyISAM数据表必须具有完全一样的结构。每一个成员数据表的数据列必须按照同样的顺序定义同样的名字和类型,索引也必须按照同样的顺序和同样的方式定义。假设你有几个日志数据表,他们内容分别是这几年来每一年的日志记录项,他们的定义都是下面这样,YY代表年份:转载 2016-01-14 17:21:08 · 413 阅读 · 0 评论 -
mysql数据库系统数据库information_schema
查询重复记录SELECT sub_tab_name,COUNT(*) AS COUNT FROM t_sub_tab_record GROUP BY ori_tab_name HAVING COUNT>1;查询表字段名(可以跨数据库查询)SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='转载 2015-12-26 09:58:40 · 1518 阅读 · 0 评论 -
MySQL:按前缀批量删除表格
想要实现mysql>drop table like "prefix_%"没有直接可用的命令,不过可以通过mysql语法来组装;[sql] view plaincopySELECT CONCAT( 'DROP TABLE ', GROUP_CONCAT(table_name) , ';' ) AS statement FROM information_转载 2015-12-09 15:59:58 · 531 阅读 · 0 评论 -
MySQL复制表结构和内容到另一张表中的SQL语句
1.复制表结构及数据到新表复制代码 代码如下:CREATE TABLE 新表SELECT * FROM 旧表 2.只复制表结构到新表复制代码 代码如下:CREATE TABLE 新表SELECT * FROM 旧表 WHERE 1=2即:让WHERE条件不成立.方法二:(低版本的mysql不支持,mysql4.0.25 不支持,mysql5已经支转载 2015-12-08 15:24:26 · 556 阅读 · 0 评论 -
mysql 分区学习
一,什么是mysql分表,分区 什么是分表,从表面意思上看呢,就是把一张表分成N多个小表,具体请看mysql分表的3种方法 什么是分区,分区呢就是把一张表的数据分成N多个区块,这些区块可以在同一个磁盘上,也可以在不同的磁盘上,具体请参考mysql分区功能详细介绍,以及实例.2,数据处理上 a),分表后,数据都是存放在分表里,总表只是一个外壳,存取数据发生转载 2015-12-10 09:12:57 · 604 阅读 · 0 评论 -
数据库分表
一,先说一下为什么要分表当一张的数据达到几百万时,你查询一次所花的时间会变多,如果有联合查询的话,我想有可能会死在那儿了。分表的目的就在于此,减小数据库的负担,缩短查询时间。根据个人经验,mysql执行一个sql的过程如下:1,接收到sql;2,把sql放到排队队列中 ;3,执行sql;4,返回执行结果。在这个执行过程中最花时间在什么地方呢?第一,是排队等待的时间,第二,sql转载 2015-12-09 18:04:33 · 621 阅读 · 0 评论 -
ubuntu install mysql
安装MySQL要安装 MySQL,可以在终端提示符后运行下列命令:sudo apt-get install mysql-server mysql-client #中途会让你输入一次root用户密码sudo apt-get install php5-mysql #安装php5-mysql 是将php和mysql连接起来一旦安装完成,MySQL 服务器应该自动启动。sudo st转载 2015-10-15 08:27:34 · 391 阅读 · 0 评论 -
MySQL:索引工作原理
为什么需要索引(Why is it needed)?当数据保存在磁盘类存储介质上时,它是作为数据块存放。这些数据块是被当作一个整体来访问的,这样可以保证操作的原子性。硬盘数据块存储结构类似于链表,都包含数据部分,以及一个指向下一个节点(或数据块)的指针,不需要连续存储。记录集只能在某个关键字段上进行排序,所以如果需要在一个无序字段上进行搜索,就要执行一个线性搜索(Linear Sear转载 2015-07-04 16:36:02 · 551 阅读 · 0 评论 -
MySQL性能优化的21个最佳实践 和 mysql使用索引
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过 多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。转载 2015-07-04 16:39:25 · 391 阅读 · 0 评论 -
设置mysql服务允许外网访问
1、设置mysql服务允许外网访问修改mysql的配置文件,有的是my.ini,有的是my.cnf【linux】,找到bind-address变量,这个值默认是127.0.0.1,设置为0.0.0.0;重新启动mysql服务。[sql] view plaincopyservice mysql stop service mysql start 2、设置转载 2015-07-10 10:09:17 · 819 阅读 · 0 评论 -
sql优化查询
性能不理想的系统中除了一部分是因为应用程序的负载确实超过了服务器的实际处理能力外,更多的是因为系统存在大量的SQL语句需要优化。为了获得稳定的执行性能,SQL语句越简单越好。对复杂的SQL语句,要设法对之进行简化。常见的简化规则如下: 1)不要有超过5个以上的表连接(JOIN)2)考虑使用临时表或表变量存放中间结果。3)少用子查询4)视图嵌套不要过深,一般视图嵌套不转载 2015-07-09 18:09:44 · 786 阅读 · 0 评论 -
BCP 简 要 说 明
BCP是SYBASE公司提供专门用于数据库表一级数据备份的工具。 一般存放在所安装的ASE或者Open Client 的BIN目录中。 12版本以前的ASE,bcp存放目录为 $SYBASE/bin 12版本(含12版本)以后存放目录为 $SYBASE/OCS-12_x/bin 其中$SYBASE为SYBASE安装目录,12_x代表12.0、12.5版本,显示为12_0或者12_5转载 2015-07-09 18:06:39 · 1212 阅读 · 0 评论 -
MySQL INTO OUTFILE导出导入数据|mysqldump
--使用SELECT ... INTO OUTFILE 以逗号分隔字段的方式将数据导入到一个文件中:点击(此处)折叠或打开SELECT *INTO OUTFILE 'C:\\log1.txt' FIELDS TERMINATED BY',' FROM log.log1--将刚刚导出的文件log1.txt导入到表log1相同结构的L转载 2015-07-09 17:23:10 · 817 阅读 · 0 评论 -
sql语句整理
1.(三) 使用WHERE子句设置查询条件 WHERE子句可包括各种条件运算符: 比较运算符(大小比较):>、>=、=、、!>、!范围运算符(表达式值是否在指定的范围):BETWEEN…AND… NOT BETWEEN…AND… 列表运算符(判断表达式是否为列表中的指定项):IN (项1,项2……) NOT IN (项转载 2015-03-25 16:50:34 · 444 阅读 · 0 评论 -
mysql表中不存在记录则插入否则更新记录
INSERT INTO t_back_object_state(TYPE, objectid, state) SELECT 1,2222,1 FROM t_back_object_state WHERE NOT EXISTS (SELECT table1.id FROM ((SELECT id,state FROM t_back_object_state ORDER BY i原创 2015-07-17 09:44:36 · 947 阅读 · 0 评论 -
mySQL中replace的用法
mysql replace实例说明: UPDATE tb1 SET f1=REPLACE(f1, 'abc', 'def'); REPLACE(str,from_str,to_str) 在字符串 str 中所有出现的字符串 from_str 均被 to_str替换,然后返回这个字符串 这个函数用来批量替换数据中的非法关键字是很有用的!如下例子: 例1:UPDATE转载 2015-07-17 14:25:08 · 632 阅读 · 0 评论 -
关系型数据库与非关系型数据库
1. 关系型数据库关系型数据库,是指采用了关系模型来组织数据的数据库。关系模型是在1970年由IBM的研究员E.F.Codd博士首先提出的,在之后的几十年中,关系模型的概念得到了充分的发展并逐渐成为主流数据库结构的主流模型。简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。关系模型中常用的概念:关系:可以理解为一张二维转载 2015-10-12 09:36:41 · 361 阅读 · 0 评论 -
数据库学习--分类
关系型数据库与NOSQL关系型数据库把所有的数据都通过行和列的二元表现形式表示出来。 关系型数据库的优势:1. 保持数据的一致性(事务处理)2.由于以标准化为前提,数据更新的开销很小(相同的字段基本上都只有一处)3. 可以进行Join等复杂查询其中能够保持数据的一致性是关系型数据库的最大优势。 关系型数据库的不足:不擅长的处理1. 大量数据的写入处理转载 2015-10-12 09:32:06 · 422 阅读 · 0 评论 -
数据库分类概略
关系数据库的数据内容按照关系表的方式存储在硬盘上 等需要使用的将数据调入内存。内存数据库数据常驻内存中,因此反应速度比较快 但是因为内存是有限的 所以内存数据库在设计的时候应该设计的小巧灵活, 存储的数据量比关系型数据库要小的很多实时数据库设计的目的是实时更新数据库中的数据,通过传感器等设备来保障数据库中的数据的最新的--------------------------转载 2015-10-12 09:40:20 · 567 阅读 · 0 评论 -
关系数据库---mysql、sql server、oracle比较
1. ORACLE oracle 能在所有主流平台上运行(包括 windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支 持.oracle并行服务器通过使一组结点共享同一簇中的工作来扩展windownt的能力,提供高可用性和高伸缩性的簇的解决方案。如果 windowsNT不能满足需要,用户可以把数据库移到UNIX中。Oracle的并行服务器对各转载 2015-10-12 09:41:49 · 520 阅读 · 0 评论 -
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.soc
启动mysql 报错:ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)---------------------------------网上的解决办法-1-----------------------------------------转载 2015-09-19 14:18:10 · 48342 阅读 · 0 评论 -
Mysql函数:Last_insert_id()语法讲解
Mysql函数可以实现许多我们需要的功能,下面介绍的Mysql函数Last_insert_id()就是其中之一,希望对您学习Mysql函数能有所帮助。自动返回最后一个INSERT或 UPDATE 查询中 AUTO_INCREMENT列设置的第一个表发生的值。1. mysql> SELECT LAST_INSERT_ID();2. -> 195产生的ID 每次连接后保存在服务器中。这转载 2015-09-16 16:36:54 · 525 阅读 · 0 评论 -
mysql 存储过程
mysql存储过程详解1. 存储过程简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(StoredProcedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。一个存储过程是一个可编程的函数,它在数据库中创建并保存。它可以有SQL语句和一转载 2015-07-22 10:06:13 · 400 阅读 · 0 评论 -
libzdb
Libzdb 实现了一个小型、快速和易用的线程安全的连接池数据库API,可连接多种数据库,零配置,通过URL指定连接信息。它具有以下特性:线程安全的数据库连接池连接到多个数据库系统零配置,通过URL指定连接信息支持MySQL, PostgreSQL, SQLite and Oracle 可以不断进行扩展。 支持平台及开发语言支持ios、Linux、FreeBSD、Solaris转载 2015-01-19 17:51:19 · 1921 阅读 · 0 评论