
数据库
SQL
讓丄帝愛伱
青春是一场大雨,即使感冒了,还盼回头再淋一次!
展开
-
脚本初始化Oracle数据库
如果需要自动化执行脚本,可以将命令写入 Shell 脚本中。在执行脚本时,可以将输出重定向到日志文件,便于后续排查问题。如果脚本较短,可以将其内容粘贴到命令行中逐行执行。执行完脚本后,验证数据库对象是否创建成功。原创 2025-03-03 14:16:04 · 274 阅读 · 0 评论 -
MySQL常用命令
位置:FIRST(在最前),AFTER 列名(在指定列后)。原创 2025-02-25 21:11:15 · 952 阅读 · 0 评论 -
Clickhouse使用基础
ClickHouse 自定义函数原创 2024-12-28 21:43:09 · 567 阅读 · 0 评论 -
mysql数据被误删的恢复方案
数据误删是一个严重的数据库管理问题,但通过合理的备份策略和使用适当的恢复工具,可以有效地减少数据丢失的风险。几种常见的数据恢复方法:包括使用备份、二进制日志、表空间文件以及第三方工具。原创 2024-12-20 21:16:10 · 2510 阅读 · 0 评论 -
Oracle三种分页方法
Oracle三种分页方法原创 2024-12-18 16:01:49 · 456 阅读 · 0 评论 -
Oracle报错ORA-01653: 表xx无法通过 8192在表空间中扩展
向Oracle 19g数据库中批量插入数据,当插入近2亿条数据后,报出如下错误:ORA-01653: 表xx无法通过 8192 (在表空间 xx_data 中) 扩展查看表空间,发现表空间大小已达到32G,表空间无法进行自动扩展了。(初始空间为20G)查看Oracle的 DB_BLOCK_SIZE本机数据库的数据块大小为8K,得出本机Oracle 单个表空间数据文件的最大值为:4194304 * 8/1024 = 32768M (32G);原创 2024-12-10 20:41:39 · 792 阅读 · 0 评论 -
Dbeaver连接一段时间不操作后断开的问题
右键数据库连接点击编辑连接点击初始化将连接保持改成60s原创 2024-05-10 09:35:17 · 1356 阅读 · 0 评论 -
Navicat连接远程数据库时,隔一段时间不操作出现的卡顿问题
所以,当我们再次执行语句时,Navicat 还是使用旧的连接去请求数据,发现旧的连接超时不能用了,最后又申请了一个新的连接,再去请求数据,因此过一会再次使用时 Navicat 会卡顿一会儿。Navicat 客户端有一个设置:保持连接间隔,默认是 240 秒,即客户端在用户无任何交互性操作时,会每隔 240 秒给 Mysql 服务端发送一次数据请求,以此来保持数据库连接活跃。使用 Navicat 连接服务器上的数据库时,如果隔一段时间没有使用,再次点击就会出现卡顿的问题。原创 2024-05-09 17:20:29 · 1246 阅读 · 0 评论 -
MySQL8报错:Public Key Retrieval is not allowed
mysql 8.0 默认使用 caching_sha2_password 身份验证机制 (即从原来mysql_native_password 更改为 caching_sha2_password。从 5.7 升级 8.0 版本的不会改变现有用户的身份验证方法,但新用户会默认使用新的 caching_sha2_password。客户端不支持新的加密方式。修改用户的密码和加密方式。连接MySQL数据库的时候,报错内容如下:“Public Key Retrieval is not allowed”原创 2024-04-24 16:06:15 · 1582 阅读 · 0 评论 -
MySQL SQL error: #1271 - Illegal mix of collations for operation ‘UNION‘
不同的字符集和校对规则可能导致相同的字符串在某些情况下被视为相同,而在其他情况下被视为不同。因此,当UNION查询中的列使用不同的字符集或校对规则时,MySQL无法确定如何正确地合并这些列的结果,从而引发了#1271错误。如果以上两种方法都不适用,还可以尝试更改MySQL服务器的配置来允许不同的字符集和校对规则。这个错误意味着在UNION查询中的两个或多个列使用了不同的字符集或校对规则,导致无法进行正确的合并操作。在实际应用中,最好在开发阶段就统一数据库中所有表和列的字符集和校对规则,以避免这类问题发生。原创 2024-04-10 21:22:39 · 3021 阅读 · 0 评论 -
MySQL 格式化日期函数 DATE_FORMAT(), FROM_UNIXTIME() 和 UNIX_TIMESTAMP() 之间区别
MySQL 中有非常多的日期函数,使用到比较多的就是 DATE_FORMAT(), FROM_UNIXTIME() 和 UNIX_TIMESTAMP() 这三个:DATE_FORMAT() 把日期进行格式化,FROM_UNIXTIME() 把时间戳格式化成一个日期,UNIX_TIMESTAMP() 正好相反,把日期格式化成时间戳。原创 2024-02-23 11:01:55 · 1104 阅读 · 0 评论 -
mysqldump got error 1812 tablespace is missing for table when using lock tables
这是由于在执行 mysqldump 时,表被锁定并且存储引擎不能找到该表的表空间。表空间是存储数据和索引的物理文件,如果表空间丢失,则无法访问该表的数据。mysqldump 在使用 lock tables 时遇到错误 1812 表示表空间丢失。原创 2023-12-28 09:12:37 · 2398 阅读 · 0 评论 -
mysql查询数据库表大小怎么操作
使用INFORMATION_SCHEMA数据库:MySQL提供了一个名为INFORMATION_SCHEMA的数据库,其中包含了系统中所有数据库、表和列的元数据信息。其中,database_name是要查询的数据库的名称,table_name是要查询的表的名称。使用SHOW TABLE STATUS命令:这是一种常用的方法,可以获取数据库中所有表的详细信息,包括表的大小。根据具体的需求,选择适合的方法进行操作。其中,database_name是要查询的数据库的名称,table_name是要查询的表的名称。原创 2023-12-21 20:12:26 · 1464 阅读 · 0 评论 -
mysqldump unknown variable ‘set-gtid-purged=off‘ workbench
在 MySQL 5.6 及更高版本中,mysqldump 增加了一个新的选项 --set-gtid-purged,允许在导出数据时包括或排除 GTID 信息。如果你使用的是最新版本的 MySQL Workbench,你也可以在导出数据时手动指定是否包含 GTID 信息。如果选中了这个复选框,则会在导出数据时包含 GTID 信息。如果没有选中,则会忽略 GTID 信息。如果你的 MySQL 版本低于 5.6,可以尝试在命令行中使用 --skip-set-gtid-purged 选项来解决这个问题。原创 2023-12-21 20:10:35 · 2033 阅读 · 0 评论 -
Packet for query is too large (4,544,730 > 4,194,304). You can change this value on the server by se
MySQL报错:Packet for query is too large (4,544,730 > 4,194,304). You can change this value on the server by setting the ‘max_allowed_packet’ variable.修改完成之后要重启mysql服务,如果通过命令行修改就不用重启mysql服务。查看mysql的max_allowed_packet大小,运行。默认大小4194304 也就是4M。修改 my.ini 加上。原创 2023-12-21 20:09:11 · 860 阅读 · 0 评论 -
Java时间转换为MySQL中的INT类型时间戳
在Java中,可以使用java.sql.Timestamp类来表示MySQL中的INT类型时间戳。原创 2023-12-19 11:51:29 · 516 阅读 · 0 评论 -
datagrip连接mysql报错: No appropriate protocol (protocol is disabled or cipher suites are inappropriate
点击:Test Connection 连接测试一下。在URL中添加在数据库后面添加。原创 2023-12-14 14:00:50 · 584 阅读 · 0 评论 -
docker安装mysql8忽略大小写
dockr安装mysql之后,发现该数据库对大小写敏感,各种修改配置、重启都不生效。mysql表名是否区分大小写是通过lower_case_table_names参数来设置,登录mysql后可通过来查看默认的值不同系统,该参数的默认值是不同的。windows环境默认 1 ,linux环境默认0 ,macos环境默认2docker一般都是linux安装,linux系统的lower_case_table_names默认为0。原创 2023-12-10 11:06:48 · 1588 阅读 · 0 评论 -
Ubuntu 20.04 + mysql8 安装以及配置大小写不敏感
重新安装mysql时,会提示本地已经有mysqld.cnf这个配置文件,让你选使用下载来的包里的配置文件还是你本地的。记得选本地的,不要让他覆盖回去。mysql8在初始化后不允许配置大小写敏感。原创 2023-12-09 15:38:32 · 828 阅读 · 1 评论 -
Docker安装mysql8.0
v /docker/mysql8.0.20/data:/var/lib/mysql \ 挂载数据文件 持久化到主机【路径是上面创建的挂载路径】-v /docker/mysql8.0.20/mysql:/etc/mysql \ 挂载配置文件【路径是上面创建的挂载路径】-v /docker/mysql8.0.20/logs:/logs \ 挂载日志【路径是上面创建的挂载路径】-v /etc/localtime:/etc/localtime 容器时间与宿主机同步。原创 2023-12-09 15:30:23 · 519 阅读 · 0 评论 -
SQL 42501: Postgresql查询中的权限不足错误
在PostgreSQL数据库中查询时可能会遇到的SQL 42501错误,该错误提示权限不足。原创 2023-12-05 16:42:47 · 4656 阅读 · 0 评论 -
MySQL 字符串截取函数
MySQL 字符串截取函数原创 2023-10-22 16:56:25 · 171 阅读 · 0 评论 -
Postgresql设置时区
Postgresql设置时区原创 2023-10-07 17:51:10 · 1236 阅读 · 0 评论 -
Mysql 8.0创建用户并授权
Mysql 8.0创建用户并授权原创 2023-09-07 16:23:49 · 2439 阅读 · 0 评论 -
mysql只修改日期不修改时间
mysql只修改日期不修改时间原创 2023-09-07 16:20:07 · 465 阅读 · 0 评论 -
MySQL复制表结构create table as与like的区别
LIKE:用来创建完整表结构和全部索引(可以使用INSERT INTO和SELECT语句复制源表的所有数据)AS:用来创建相同表结构并复制源表数据(可根据后面的条件来控制要不要复制源表数据)完全的复制了源表的结构包括索引信息。AS复制了表的源数据和结构,但。使用AS复制book表。原创 2023-07-31 11:29:21 · 1304 阅读 · 0 评论 -
MySQL日期格式化
MySQL日期格式化(format)取值范围原创 2023-07-24 10:22:14 · 147 阅读 · 0 评论 -
MySQL快速备份表
这种方法会将old table中所有的内容都拷贝过来,但是新表中没有了旧表的primary key、Extra(auto_increment)等属性。我们只需要将该命令拷贝出来,更改table的名字,就可以建立一个完全一样的表。复制旧数据库到新数据库(复制全部表结构并且复制全部表数据)如:db1 table1, db2 table2。复制旧表的数据到新表(假设两个表结构不一样)复制旧表的数据到新表(假设两个表结构一样)将表1内容全部复制到表2。复制表结构及数据到新表。将表1结构复制到表2。原创 2023-07-23 17:04:43 · 2150 阅读 · 0 评论 -
mysqlx_max_connections
是MySQL 8.0版本中的一个系统变量,它用于设置MySQL X Protocol(X协议)的最大连接数。MySQL X Protocol是MySQL的一种新的协议,它基于WebSocket和JSON,用于提供无状态、基于文档的访问MySQL的功能。该变量的默认值是100,意味着默认情况下MySQL服务器最多可以同时接受100个通过X协议的连接。但请注意,默认情况下,MySQL服务器还可以处理更多的连接,因为还有其他传统的协议,例如MySQL客户端库的连接。请确保您具有足够的权限以修改该变量。原创 2023-07-21 10:36:47 · 5541 阅读 · 0 评论 -
mysql查看当前实时连接数最大连接数
max_user_connections 该参数只能对整体限制资源,不能对某个用户进行限制,如果需要对某个用户限制的话,可以在权限表里面看到。配置文件修改最大连接数,永久生效。针对某个用户进行最大连接数限制。MySQL重启后就失效了。命令行修改最大连接数。原创 2023-07-21 10:29:42 · 2125 阅读 · 0 评论 -
MySQL连接超时时间wait_timeout导致间歇性报错:communication link failure
控制连接最大空闲时长的wait_timeout参数。对于非交互式连接,类似于jdbc连接,wait_timeout的值继承自服务器端全局变量wait_timeout。对于交互式连接,类似于mysql客户单连接,wait_timeout的值继承自服务器端全局变量interactive_timeout。判断一个连接的空闲时间,可通过show processlist输出中Sleep状态的时间。原创 2023-07-13 15:38:36 · 643 阅读 · 0 评论 -
show processlist结果筛选
所以processlist的show方式是不能使用过滤查找,可能源自MySQL的内部安全机制吧,show是用来查看MySQL内部运行数据,其实processlist就是information_schema数据库中的一张表,那么通过查表的方式肯定是可以的。show full processlist 是显示用户正在运行的线程,需要注意的是,除了 root 用户能看到所有正在运行的线程外,其他用户都只能看到自己正在运行的线程,看不到其它用户正在运行的线程。解释:显示最后一个执行的语句所产生的错误、警告和通知。原创 2023-07-13 15:11:33 · 4111 阅读 · 0 评论 -
使用select for share,for update的场景及死锁陷阱
SELECT … FOR SHARE 和 SELECT … FOR UPDATE语句是innodb事务中的常用语句for share会给表增加一个is锁,给记录行增加一个s锁,for update会给表增加一个ix锁,给记录行增加一个x锁。转载 2023-07-09 18:20:09 · 1208 阅读 · 0 评论 -
DB2中with ur
作用是在select的时候,不需要对update的数据进行等待。原创 2023-07-09 17:38:10 · 1091 阅读 · 0 评论 -
mysql服务器hang死的原因
MySQL服务器hang死指的是在数据库操作中,服务器突然停止响应、无法操作的现象。实际情况可能还会有其他因素导致服务器hang死,需要根据具体情况分析原因。原创 2023-07-09 17:34:34 · 594 阅读 · 0 评论 -
如何判断mysql主从是否同步
如何判断mysql主从是否同步原创 2023-07-03 11:19:17 · 1082 阅读 · 0 评论 -
mysql清理binlog日志
查看主库和从库正在使用的binlog是哪个文件开始手动清除binlog,删除指定日期以前的日志。转载 2023-06-29 11:06:36 · 125 阅读 · 0 评论 -
查看MySQL的当前存储引擎
查看MySQL的当前存储引擎原创 2023-06-29 10:53:32 · 247 阅读 · 0 评论 -
MySQL delete后怎么释放表空间
使用delete 加上 where条件的删除都不是真删除,在删除数据的时候,mysql并没有把数据文件删除,而是将数据文件的标识位删除,没有整理文件,因此不会彻底释放空间。被删除的数据将会被保存在一个链接清单中,当有新数据写入的时候,mysql会利用这些已删除的空间再写入。删除操作会带来一些数据碎片,正是这些碎片在占用硬盘空间。原创 2023-06-29 10:36:03 · 1941 阅读 · 0 评论 -
用html和css实现字体发光效果
* 为每一个span标签设置动画延迟时间 *//* 页面内外边距初始化 *//* 100%的窗口高度 *//* 转换为大写 *//* 模糊滤镜 *//* 执行动画 *//* 定义动画 *//* 文字阴影 */转载 2023-06-23 14:47:38 · 1399 阅读 · 0 评论