数据库相关
文章平均质量分 59
如:MySQL、oracle、MongoDB、Redis、SQLServer等
浮云6363
这个作者很懒,什么都没留下…
展开
-
【GaussDB】查看表和数据库信息
查询表是否做过表分析,执行如下命令会返回每个表最近一次做analyze的时间,没有返回时间的则表示没有做过analyze。使用系统表pg_tables查询数据库所有表的信息。使用函数pg_get_tabledef查询表定义。通过系统表pg_database查询数据库列表。查询public下的表做表分析的时间。查询表的总大小(包含表的索引和数据)查询系统中所有表占用空间大小排行。查询表的数据大小(不包括索引)原创 2023-06-07 11:05:01 · 11327 阅读 · 0 评论 -
【PostgreSQL】PostgreSQL的upsert功能(insert on conflict do)的用法
PostgreSQL 的 upsert 功能:当记录不存在时,执行插入;否则,进行更新。原创 2022-07-08 21:12:21 · 4262 阅读 · 0 评论 -
MySQL列转行(group_concat函数)
在MySQL中,如何将列转成一行?比如一个一个商品会属于多个分类(如华为手机可以是手机分类,也可以是数码分类),如何将此商品在一条数据中展现所有分类。思路很简单,通过MySQL函数group_concat即可解决。创建测试表:create table test.test_mysql_liezhuanhang (id bigint auto_increment comment '主键',name varchar(100),age int(5),prima原创 2021-12-16 22:37:22 · 5814 阅读 · 0 评论 -
MySQL行转列
在MySQL中,有字段存储类型为varchar,值为用某个符号分割的数组,如何进行行转列?整体思路:利用mysql.help_topic中从0开始自增help_topic_id字段和想要行转列的表进行join产生笛卡尔积,运用MySQL的substring_index(str,delim,count)函数将字段一个一个分割。substring_index(str,delim,count)str:要处理的字符串delim:分隔符count:计数(如果是正数,从左至右截取count个,负数则从右至左截原创 2021-11-26 21:09:17 · 1546 阅读 · 0 评论 -
windows连接WSL-ubuntu里安装的MySQL
推荐使用root用户,或者在每条命令前面加上sudo搜索MySQL: apt search mysql-server**安装MySQL:**执行 sudo apt install mysql-server安装完成后查看MySQL服务状态:sudo service mysql status启动MySQL服务:sudo service mysql start登录MySQL:sudo mysql -u root -p这里需要我们输入密码,但是我们还没设置密码,默认密码为空,直接回车就好了修改my原创 2021-09-05 22:49:25 · 1299 阅读 · 0 评论 -
2059 - Authentication plugin ‘caching_sha2_password‘ cannot be loaded: dlopen(../Frameworks/caching_
navicat连接mysql报错如下:2059 - Authentication plugin 'caching_sha2_password' cannot be loaded: dlopen(../Frameworks/caching_sha2_password.so, 2): image not found原因:由于目前已有的客户端连接软件还不支持mysql 8新增加的加密方式caching_sha2_password,所以我们需要修改用户的加密方式,将其改为老的加密验证方式。use mysq原创 2021-06-10 14:37:36 · 1425 阅读 · 0 评论 -
【MySQL】聊聊MySQL中alter的那些事
目录新增字段删除字段修改字段类型长度及名称修改字段顺序ALTER TABLE 对 Null 值和默认值的影响删除约束修改表引擎修改表名称使用的MySQL版本为:5.1.73mysql> select version();+-----------+| version() |+-----------+| 5.1.73 |+-----------+1 row in set (0.10 sec)三个月前,小李在MySQL中创建了一张user_tb表用来存储用户信息,当时系统能获取到原创 2021-05-07 17:56:47 · 566 阅读 · 0 评论 -
【MySQL】老板:让你将数据导入mysql就这么费劲?
目录前言一、mysql 命令导入二、source 命令导入三、使用 load data 导入数据四、使用 mysqlimport 导入数据前言今天,程序员小李被老板训了一顿,还被扣了1k的工资,原因就是因为有一个项目已经上线,客户这边要求将提供历史数据批量导入到mysql中,但是小王由于对这么方面有点生疏,都是现百度现实现,导致工作效率低,引发了老板的不满。 小李悲痛欲绝,下决心要搞明白mysql的数据批量导入,经过查阅各种资料学习, 小王对此了解的八九不离十了,从而在老板面前硬了起来……一、m原创 2021-04-23 01:47:22 · 487 阅读 · 0 评论 -
mysql报错:ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it can
登录mysql客户端,将表数据导出到服务器时报错如下:mysql> select * from bus_ticket_sale into outfile '/root/temp/bus_ticket_sale.txt' fields terminated by ',' lines terminated by '\n';ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it ca原创 2021-04-18 00:56:03 · 1855 阅读 · 0 评论 -
【MySQL】mysql数据导出
目录使用 SELECT ... INTO OUTFILE 语句导出数据通过mysqldump命令导出数据和备份SQL将指定主机的数据库拷贝到本地在项目中,遇到需要把MySQL数据导出到本地时,可以通过以下两种方法实现。本博客使用的MySQL是5.1.73版本。使用 SELECT … INTO OUTFILE 语句导出数据select * from tb_words into outfile '/home/fuyun/datas/words.txt' fields terminated by ','原创 2021-04-18 00:48:48 · 1086 阅读 · 0 评论 -
【MySQL】MySQL创建用户并授权
目录查看用户查看当前用户查看用户列表创建用户修改用户密码授予权限查看用户查看当前用户mysql> select user(); --当前用户及登录IP+----------------+| user() |+----------------+| root@localhost |+----------------+1 row in set (0.00 sec)mysql> select current_user();+----------------+原创 2021-03-30 23:08:29 · 457 阅读 · 0 评论 -
【MySQL】MySQL如何查看和修改数据库字符集
目录基本概念MySQL字符集设置系统变量:MySQL中的字符集转换过程常见问题解析使用MySQL字符集时的建议其他注意事项修改字符集修改全局字符集修改库的字符集修改表的字符集修改字段的字符集基本概念字符(Character)是指人类语言中最小的表义符号。例如’A’、’B’等;给定一系列字符,对每个字符赋予一个数值,用数值来代表对应的字符,这一数值就是字符的编码(Encoding)。例如,我们给字符’A’赋予数值0,给字符’B’赋予数值1,则0就是字符’A’的编码;给定一系列字符并赋予对应的编码后转载 2021-03-16 23:26:29 · 1318 阅读 · 0 评论 -
【oracle】oracle查询表存储大小和表空间大小
目录查看表分配的物理空间大小查看表实际存储空间大小查看每个表空间的大小查看表空间大小及使用率查看数据库中数据文件信息查看临时表空间信息oracle表大小有两种含义,即表分配的空间大小和实际占用的物理空间大小,分配的物理空间大小不一定全部被使用了,实际空间大小是实际使用的空间大小。oracle元数据库相关表字段解释查看表分配的物理空间大小select segment_name --表名 ,bytes --分配空间大小(字节) ,bytes/1024/1024 --分配空间大小(原创 2021-01-04 17:11:10 · 10374 阅读 · 0 评论 -
【oracle】oracle元数据获取用户下的表关键信息
目录获取该用户下所有表名和表描述获取查看该用户下所以表字段信息(除字段描述)获取字段描述获取表的主键信息获取用户下表关键信息了解一个业务系统的数据情况,所有要了解该业务系统的表结构信息及ER关系图。本文主要聊聊通过oracle元数据获取该用户下所有表的关键信息,比如:表名、表描述、字段名、字段描述、字段类型、字段长度、是否主键、是否非空、默认值等。获取该用户下所有表名和表描述user_tab_comments表(视图),该表存储的是该用户下所有表和描述select table_name, comme原创 2020-12-25 16:52:47 · 1408 阅读 · 0 评论 -
【oracle】oralce删除表及恢复删除的表
目录普通删除表彻底删除表查看回收站及情况回收站将普通删除的表从回收站恢复在oracle中,也有一个回收站,即通过普通的drop table table_name命令并不会将表彻底的删除,只会将表的所有信息迁移到回收站进行保存,没有真正的删除释放空间。普通删除表删除带约束的表drop table table_name cascade constraints;彻底删除表如果想彻底的删除表释放空间可以通过增加关键字purge进行删除drop table table_name purge;查看回原创 2020-12-25 11:32:32 · 231 阅读 · 1 评论 -
【oracle】oracle取月份和日期不带0的方法
需求:yyyymmdd格式的日期转换为yyyy/m/d格式的日期,比如20200908 ,需要的结果是2020/1/8巧用oracle自带的格式select to_char(to_date('20200908', 'yyyymmdd'), 'yyyy/fmmm/dd') from dual;ps:the format_mask parameter begins with “FM”. This means that zeros and blanks are suppressed...原创 2020-11-14 17:53:45 · 4251 阅读 · 0 评论 -
【oracle】oracle按照某字段指定顺序排序
目录方案一、通过order by instr实现指定顺序排序方案二:通过order by decode补充:通过拼音、比划、部首排序方法使用拼音排序使用部首排序使用笔画数排序在做报表展现时,会遇到这样的需求,按照某个字段指定的顺序进行排序展示,比如按照面积段从大到小进行排序,这种需求如果直接使用order by 进行排序,对于字符串是按照字典顺序进行排序的,并不是我们想要的顺序排序,oracle提供了两种方法可以实现该需求:先准备测试数据drop table BR_DICT;create tabl原创 2020-09-26 17:47:19 · 18752 阅读 · 2 评论 -
【MySQL】MySQL的where条件字符串区分大小写的问题
MySQL默认情况下,where条件遇到字符串是不区分大小写的。以下两条SQL语句结果是一样的:MySQL [datawarehouse]> select * from temp_01 t where browser = 'ie:11' limit 3;+-----+----------+-----------+---------+--------+| id | platform | version | browser | counts |+-----+----------+-----原创 2020-07-19 10:39:22 · 10251 阅读 · 0 评论 -
【MySQL】MySQL Explain详解
文章目录概要描述:一、 id二、select_type三、table四、type五、possible_keys六、Key七、key_len八、ref九、rows十、Extra在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引,有没有做全表扫描,这都可以通过explain命令来查看。所以我们深入了解MySQL的基于开销的优化器,还可以获得很多原创 2020-07-19 10:37:31 · 190 阅读 · 0 评论 -
【MySQL】Windows 登陆MySQL shell
安装MySQL找到MySQL安装目录添加到环境变量中mysql -h localhost -P 3306 -u root -p参数说明:-h: Connect to host(连接地址)-P: 连接的端口号-u: 连接的用户名-p: 连接的密码MySQL shell可以使用\G ,navicat 不可以使用\G...原创 2020-07-19 10:36:01 · 1197 阅读 · 0 评论 -
【MySQL】mac安装mysql教程
mac的mysql地址:地址:http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.10-osx10.10-x86_64.dmg双击安装安装过程中需要注意的是,MySQL已经默认用户root的密码已经不再是root,而是动态生成的一个临时密码(如:root@localhost: yltGn*gPH9t,)。在安装过程中会出现一个弹窗告诉你动态密码,千万要记住这个或者拷贝下这个密码,这关系着你能不能进入数据库。配置环境变量vi ~/.bas原创 2020-07-12 02:03:28 · 253 阅读 · 0 评论 -
MySQL连接报错:ERROR 1820 (HY000): You must reset your password using ALTER USER...
如果在连接MySQL报错以下:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.说明你必须要重设你的用户密码,解决方法:执行以下命令:alter user 'root'@'localhost' identified by...原创 2019-11-02 12:13:42 · 1151 阅读 · 0 评论 -
【MySQL】MySQL如何中查看变量及查看数据库的编码
查看MySQL变量命令:show variables;会出现很多的变量,比如连接超时时间、写入超时时间、MySQL版本等等查看数据库编码命令:show variables like "char%";+--------------------------+--------+| Variable_name | Value |+------------------...原创 2018-12-28 19:29:38 · 3541 阅读 · 2 评论 -
【MySQL】MySQL日期函数大全及详解
文章目录获得当前日期+时间(date + time)函数:now()获得当前日期+时间(date + time)函数:sysdate()获得当前日期(date)函数:curdate()获得当前时间(time)函数:curtime()获得当前 UTC 日期时间函数:utc_date(), utc_time(), utc_timestamp()选取日期时间的各个部分:日期、时间、年、季度、月、日、小时...原创 2018-12-25 23:49:27 · 2774 阅读 · 0 评论 -
【MySQL】MySQL中l获取两个时间的年、月、日、小时、分钟、秒之差
MySQL中l获取两个时间的小时之差:select timestampdiff(hour, "2018-12-25 19:15:16","2018-12-25 23:55:16") as hour_diff;+-----------+| hour_diff |+-----------+| 4 |+-----------+1 row in set (0.00 sec)...原创 2018-12-25 20:02:40 · 881 阅读 · 0 评论 -
sql server2017从MySQL导入数据到SQL Server时报错:截断行处理设置指定截断时出错解决方案
今天晚上在跑SQL Server代理作业时报错:错误: 0xC020902A,位于 credit_ious_instalment, 源 - 查询 [2]: “源 - 查询”由于发生截断而失败,而且针对“源 - 查询.输出[ADO NET 源输出].列[ious_no]”的截断行处理设置指定截断时出错。在指定组件的指定对象上出现截断错误。错误: 0xC02090F5,位于 credit_ious...原创 2018-12-14 23:02:55 · 2625 阅读 · 0 评论 -
SqlServer如何查看死锁的进程
今天测试同时运行将增量数据导入增量数据库对应的表并同步到全量数据库中,发现其中一个进程卡着不懂了。在SQLServer自带的manage 客户端的活动和监视器中看到了死锁活动监视器打开方式:在进程中的头阻塞显示了1,说明有死锁。这个工具, 用来查看一些当时的运行状态.和干掉进程.但是这个工具只能查看部分哪个表被锁住了. 也无法知道是哪个进程和sql导致了锁进程. 只能查看一些其它的信...原创 2018-12-04 18:33:21 · 18513 阅读 · 1 评论 -
SQL Server 执行T-SQL提示:将截断字符串或二进制数据[SQLSTATE 22001] (错误 8152)
今天在执行以前写的将增量同步到全量的作业过程中报如下错误:消息已以用户 NT SERVICE\SQLSERVERAGENT 的身份执行。 将截断字符串或二进制数据。 [SQLSTATE 22001] (错误 8152) 语句已终止。 [SQLSTATE 01000] (错误 3621) 警告: 聚合或其他 SET 操作消除了 Null 值。 [SQLSTATE 01003] (消息 815...原创 2018-12-04 15:48:57 · 26037 阅读 · 0 评论 -
SQLServer 数据导入导出 SSIS 包 位置
笔记:sqlserver 在执行数据导入导出的时候,可以选择是否保存SSIS包,如果选择保存,在保存方式有:SQlserver 、文件系统。如果选择sqlserver 则 包信息保存在 msdb 系统数据库 中的 sysssispackages 表中。如果是文件系统,在保存为 .dtsx 文件存在于文件系统的某个目录下。保存包后,下次再执行相同的数据导出导入操作可以,用 sqls...原创 2018-12-04 15:03:58 · 3381 阅读 · 0 评论 -
T-SQL查询进阶—理解SQL Server中的锁
简介在SQL Server中,每一个查询都会找到最短路径实现自己的目标。如果数据库只接受一个连接一次只执行一个查询。那么查询当然是要多快好省的完成工作。但对于大多数数据库来说是需要同时处理多个查询的。这些查询并不会像绅士那样排队等待执行,而是会找最短的路径执行。因此,就像十字路口需要一个红绿灯那样,SQL Server也需要一个红绿灯来告诉查询:什么时候走,什么时候不可以走。这个红绿灯就是锁。...转载 2018-12-04 14:39:24 · 254 阅读 · 0 评论 -
SSIS最佳实践:SQL Server提升执行性能
SQL Server集成服务(SQL Server Integration Services,SSIS)在其前辈DTS(Data Transformation Services,数据转换服务)的基础上进步了不少,从可用性、性能和并行等方面来说,它已经成长为一个企业级ETL(Extraction, Transformation and Loading,抽取、转换和加载)产品,除了是一个ETL产品外,...原创 2018-12-03 14:43:36 · 2716 阅读 · 0 评论