数据库
思想永无止境
这个作者很懒,什么都没留下…
展开
-
mysql查询字符串x.y.z的最大值
【代码】mysql查询字符串x.y.z的最大值。原创 2024-08-23 17:59:56 · 175 阅读 · 0 评论 -
docker --network host,仍然无法使用127.0.0.1连接数据库,改用宿主机ip后可以连接
外部网络也能连上mysql。只有这个java服务无法连接mysql,java服务是用是127.0.0.1,但是当我把java服务的配置改成宿主机真实ip时,java服务又可以连上了mysql,好奇怪。有两个docker容器,一个是mysql,一个是java服务。两个都是host网络模式。宿主机上可以连mysql,java服务也可以通过wget检测能连上mysql端口。mysql里的账号已经设置过了,是%,即允许所有ip访问。原创 2024-06-03 14:29:31 · 643 阅读 · 2 评论 -
Bad file format reading the append only file appendonly.aof.86.incr.aof: make a backup of your AOF
1.修复AOF,由于redis无法启动,进不去,所以只能将AOF文件用一个新装的redis去修复。2.删除AOF文件,然后重启redis(这是最快的解决方法)。3.删除AOF文件,然后关闭AOF,然后重启redis。1.删掉redis,重新创建(这是最快的解决方法)。AOF损坏导致redis无法启动。1.服务器磁盘满了导致。2.异常重启如断电。原创 2023-11-13 09:39:42 · 705 阅读 · 0 评论 -
外键问题~
Foreign keys are not yet supported in conjunction with partitioning --外键还不支持与分区结合使用。Error 1215:Cannot add foreign key constraint --数据库类型不一致导致无法创建外键。原创 2023-11-04 10:11:07 · 194 阅读 · 0 评论 -
删除重复数据
【代码】删除重复数据。原创 2023-11-04 10:08:54 · 60 阅读 · 0 评论 -
redis
解决了节点和槽的关系后,接下来就需要对key求哈希值,然后对16384取余,余数是几key就落入对应的槽里。原来规划好的节点,进行扩容或者缩容时比较麻烦,不管扩容还是缩容,每次数据变动导致节点有变动,映射关系需要重新进行计算,在服务器个数固定不变时没有问题,如果需要弹性扩容或故障停机的情况下,原来的取模公式就会发生变化:Hash(key)/3会变成Hash(key)/?数据量增加了,需要增加一台节点odeX,X的位置在A和B之间,那收到影响的也就是A到X之间的数据,重新把A到X的数据录入到X上即可,。原创 2023-11-04 10:04:54 · 510 阅读 · 1 评论 -
导出数据库表为word
【代码】导出数据库表为word。原创 2023-05-29 16:32:19 · 240 阅读 · 0 评论 -
MySQL特殊字符问题
数据库中,\和%是特殊字符,存可以正常存,但查询时需要转义才能查到原来的值。原创 2023-06-08 12:27:23 · 349 阅读 · 0 评论 -
Could not create server TCP listening socket *:6379: bind: 在一个非套接字上尝试了一个操作 。
启动时需要指定配置文件。原创 2022-09-04 01:15:16 · 6832 阅读 · 3 评论 -
Client does not support authentication protocol requested by server; consider upgrading MySQL client
这说明客户端连接数据库失败,是网络都连不上,不是密码错误连不上,需要检查ip、port是否填写正确,mysql server是否启动,其次检查是否被防火墙拦截。原创 2022-09-03 20:48:43 · 2744 阅读 · 2 评论 -
数据库锁介绍
锁是计算机协调多个进程或纯线程并发访问某一资源的机制。在数据库中,除传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。原创 2022-08-23 13:28:22 · 2919 阅读 · 0 评论 -
MySQL大杂烩
最上层是一些客户端和连接服务,包含本地sock通信和大多数基于客户端/服务端工具实现的类似于tcp/ip的通信。主要完成一些类似于连接处理、授权认证、及相关的安全方案。在该层上引入了线程池的概念,为通过认证安全接入的客户端提供线程。同样在该层上可以实现基于SSL的安全链接。服务器也会为安全接入的每个客户端验证它所具有的操作权限。路径解释备注mysql数据库文件的存放路径配置文件目录mysql server命令及配置文件/usr/bin相关命令目录。...............原创 2022-08-12 20:34:47 · 481 阅读 · 0 评论 -
MongoDB简介安装和入门案例
MongoDB是由C++语言编写的,是一个基于分布式文件存储的开源NoSQL数据库。在高负载的情况下,添加更多的节点,可以保证服务器性能。MongoDB旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB文档类似于JSON对象。字段值可以包含其他文档,数组及文档数组。{name"张三",sex"男",age。...原创 2022-07-26 10:04:58 · 272 阅读 · 0 评论 -
进入mysql命令行和退出mysql命令行
如果以上命令都无法退出mysql则按Ctrl+c。mysql-u用户名-p回车。mysql-u用户名-p回车。原创 2022-07-21 01:16:58 · 7196 阅读 · 1 评论 -
windows docker里安装并使用mysql(内含mysql主从搭建)
privileged为true启动的容器可以看到很多host上的设备,可以执行mount,可以在docker容器中启动docker容器。privileged值为false时,container内的root只是外部的一个普通用户权限,默认为false。,还得采用原来的老办法。容器里的mysql和外面的mysql并没有本质区别,其配置文件在。删除容器时将数据卷一并删除,如果还有别的容器引用该数据卷,则删除失败。只删除数据卷,如果还有容器引用该数据卷,则删除失败。第二步,运行mysql镜像,启动mysql实例。.原创 2022-07-20 22:36:40 · 9635 阅读 · 2 评论 -
mysql数据导入导出
登录时一定要加上,不然可能造成导入的数据乱码。原创 2022-07-19 22:21:50 · 234 阅读 · 0 评论 -
Error Code: 1442. Can‘t update table ‘xxx‘ in stored function/trigger because it is already used by
Error Code: 1442. Can’t update table ‘xxx’ in stored function/trigger because it is already used by statement which invoked this stored function/trigger.SELECT max(id) c FROM xxx;select add_test_data(299999);调用mysql函数时,不能使用 (SELECT max(id) c FROM xxx)传原创 2021-02-08 11:53:19 · 1179 阅读 · 0 评论 -
redis快速启动和关闭连接
在redis目录新建三个cmd:startserver.cmdredis-server.exe redis.windows.confstartclient.cmdredis-cli -h 127.0.0.1 -p 6379shutdown.cmdredis-cli -h 127.0.0.1 -p 6379 shutdown原创 2020-07-14 10:03:00 · 634 阅读 · 0 评论 -
Warning: Truncated incorrect DOUBLE value
Warning: Truncated incorrect DOUBLE value是因为字段类型传入错误。如is_used是字符串类型,却使用int查询:where is_used=0原创 2020-07-11 11:16:09 · 517 阅读 · 0 评论 -
Warning: World-writable config file ‘/etc/mysql/my.cnf‘ is ignored
今天用shell来直接登录MySQL,报错如下xeay@ubuntu:~$ mysqlWarning: World-writable config file '/etc/mysql/my.cnf' is ignoredERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)‘/etc/my.cnf’ is ignored ,大概意思是权限全局可写,任原创 2020-07-11 09:40:31 · 562 阅读 · 0 评论 -
Commands out of sync; you can‘t run this command now
Commands out of sync; you can’t run this command now保证每一次查询都是使用新创建的corser就不会出现这个错误原创 2020-07-11 09:18:23 · 3221 阅读 · 0 评论 -
redis应用场景
Redis可以做什么缓存缓存机制几乎在所有的大型网站都有使用,合理地使用缓存不仅可以加快数据的访问速度,而且能够有效地降低后端数据源的压力。Redis提供了键值过期时间设置,并且也提供了灵活控制最大内存和内存溢出后的淘汰策略。可以这么说,一个合理的缓存设什能够为个网站的稳定保驾护航。第11章将对缓存的设计与使用进行详细说明。排行榜系统排行榜系统几乎存在于所有的网站,例如按照热度排名的排行榜,按照发布时间的排行榜,按照各种复杂维度计算出的排行榜,Redis提供了列表和有序集合数据结构,合理地转载 2020-06-09 21:39:56 · 137 阅读 · 0 评论 -
mysql常用函数
类似substring+find_in_set组合使用,从1开始结果为a-b-c。原创 2020-03-13 12:54:06 · 780 阅读 · 0 评论 -
问题记录
alter table news add index create_time_valid_news_type(`create_time` desc,`valid`,`news_type`);SELECT t1.*FROM `news` t1 force INDEX (create_time_valid_news_type)WHERE t1.valid = 1 AND t1...原创 2020-03-11 14:34:58 · 127 阅读 · 0 评论 -
mysql 两种不同方式建索引会导致执行计划不同
index(`channel_id`,`news_id`),index(`news_id`)这种情况建索引,别的表join此表时,不会使用全表扫描index(`channel_id`,`news_id`),这种情况建索引,别的表join此表时,会使用全表扫描...原创 2020-02-21 15:44:46 · 338 阅读 · 0 评论 -
mysql报错Error Code: 1054. Unknown column 't1.id' in 'on clause'
select t1.*,(select `key` from recommend r inner join recommend_ref_news rrn on r.id=rrn.recommend_id and rrn.news_id=t1.id) as recommend from news t1原因:个人猜测,括号里的子查询是先执行的,所以没有t1,不知道为什么mysql要先执行子查...原创 2020-01-14 15:47:01 · 5514 阅读 · 1 评论 -
redis初体验
安装:https://www.runoob.com/redis/redis-install.html设置值语法:set key value [EX seconds] [PX milliseconds] [NX|XX]解释:中括号里的都是可选参数,如果所有可选参数都不设置,那么将创建(如果不存在)或设置(如果存在)一个没有失效时间的键值对。EX设置键过期时间,单位为秒...原创 2020-01-03 15:43:05 · 135 阅读 · 0 评论 -
低版本mysql导致的问题
问题:建表时,一个建表语句中不能使用两次或多次current_timestamp错误代码: 1293Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause解决:升级数据库到5.6或将current_t...原创 2019-12-24 13:31:17 · 558 阅读 · 0 评论 -
mysql执行if else语句只能在函数或存储过程中
oracle支持在函数或存储过程之外使用if else for等任何语句,而mysql执行if else for等语句只能在函数或存储过程中才行!原创 2019-12-18 19:25:47 · 2000 阅读 · 0 评论 -
mysql 的row_count函数和found_rows函数
row_count函数返回的是当前连接中操作数据库的行数,增删改查语句都能对它有效果。如执行select * from TTT这条语句如果查出了2条数据,row_count函数就会返回2。...原创 2019-12-18 19:18:08 · 9412 阅读 · 4 评论 -
mysql报错Error Code: 1293. Incorrect table definition; there can be only one TIMESTAMP column
Error Code: 1293. Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause原因:mysql版本太低了,不支持一个表中有两个DEFAULT(或者ON UPDATE) CURRENT_TIMESTA...原创 2019-12-05 22:51:17 · 2880 阅读 · 0 评论 -
mysql重置密码修改密码
update mysql.user set authentication_string="" where user="root";commit;flush privileges;原创 2019-12-02 11:58:47 · 113 阅读 · 0 评论 -
大型企业内部系统数据库通用表设计
数据总表id、名称、排序字段、排序方式数据项表id、名称、值、数据总表id、序号、语言(en/cn)国家表id、中文全称、中文简称、英文全称、英文简称、国家编码(英文缩写)地区表id、中文全称、中文简称、英文全称、英文简称、地区编码、地区级别、父地区id,国家id公司表核心字段id、中文全称、中文简称、英文全称、英文简称、是否为总公司部门表核心字段id、中文名称、英文名称...原创 2019-11-19 23:10:36 · 1309 阅读 · 1 评论 -
redis简介下载安装及简单使用和应用场景
简介key-value内存数据库,也支持保存到磁盘做持久化,拥有丰富的数据类型,和极高的性能。下载下载地址:https://github.com/MSOpenTech/redis/releases。选择Redis-x64-3.0.504.zip下载。安装解压到一个准备给redis的目录即可。使用启动服务器cmd:redis-server.exe redis.windows.con...原创 2019-07-16 05:10:18 · 134 阅读 · 0 评论 -
oracle通过触发器实现主键自增
--删除,注意顺序,触发器一定要先删drop trigger if exists tri_mytrigger;drop sequence if exists seq_mysequencedrop table if exists tab_mytable;--测试表create table tab_mytable( id int not null primary key, ti...原创 2019-07-16 04:47:26 · 250 阅读 · 0 评论 -
mybatis-generator代码生成器使用
准备工作eclipse配置好maven。项目地址:https://github.com/mybatis/generator/下载zip,解压,然后导入maven项目,只需要使用mybatis-generator-core项目,其他用不上。然后右键选择项目,maven>Update Project然后在mybatis-generator-core项目根目录下新建一个myGenerat...原创 2019-06-23 02:50:38 · 526 阅读 · 0 评论 -
Oracle中Schema定义
A schema is a collection of database objects (used by a user.).Schema objects are the logical structures that directly refer to the database’s data.A user is a name defined in the database that can ...原创 2019-06-20 07:33:45 · 1215 阅读 · 0 评论 -
数据库事务特性与隔离级别
原子性(Atomicity):一个事务包含多个操作,这些操作要么全部执行,要么全都不执行。实现事务的原子性,要支持回滚操作,在某个操作失败后,回滚到事务执行之前的状态。一致性(Consistency):事务的一致性指的是在一个事务执行之前和执行之后数据库都必须处于一致性状态(正确的状态)。这种特性称为事务的一致性。假如数据库的状态满足所有的完整性约束,就说该数据库是一致的。什么叫正确的状态呢?就是当前的数据满足预定的约束条件就叫做正确的状态。原创 2019-06-19 16:55:20 · 258 阅读 · 0 评论 -
oracle忘记密码修改密码
oracle忘记密码修改密码:cmdsqlplus "/ as sysdba"alter user 用户名 identified by "新密码";alter user sys identified by "123456";创建用户:create user 用户名 identified by "密码";删除用户drop user 用户名;...原创 2018-04-16 12:56:48 · 557 阅读 · 0 评论 -
将天数转x年x月x天
Java版本: int daycount=70;//天数 int year=daycount/365; int month=(daycount-(year*365))/30; int day=daycount-(year*365)-(month*30); String java=year+"年"+month+"月"+...原创 2018-03-25 16:15:16 · 1256 阅读 · 1 评论