mysql去除重复数据
建立一张临时表和原表一致的表结构 1create table test_clear like test_dump; 自定义表结构,content_id标识原表中重复的字段 123456CREATE TABLE `test_clear` ( `content_id` varchar(64) DEFAULT NULL, `maxId` bigint(20) DEFAULT NULL, UNIQUE KEY `uk_maxId` (`maxId`), KEY `nk_contentId` ( ...
阅读更多
最小化安全的shell脚本
每个人或多或少总会碰到要使用并且自己完成编写一个最基础的Bash脚本的情况。真实情况是,没有人会说“哇哦,我喜欢写这些脚本”。所以这也是为什么很少有人在写的时候专注在这些脚本上。 我本身也不是一个Bash脚本专家,但是我会在本文中跟你展示一个最基础最简单的安全脚本模板,会让你写的Bash脚本更加安全实用,你掌握了之后肯定会受益匪浅。 为什么要写Bash脚本其实关于Bash脚本最好的解释如下: The opposite of “it’s like riding a bike” is “it’s ...
阅读更多
K8s记录-RBAC鉴权
概述RBAC(Role-Based Access Control )基于角色的访问控制,这个基础概念不多赘述 在k8s中有四种对象用于支持该鉴权方式,Role,ClusterRole,RoleBinding,ClusterRoleBinding 分别对应为角色,集群角色,角色绑定关系,集群角色绑定关系 以上四种总体来说分为两类,角色定义,角色绑定 角色定义描述了角色具体的权限信息,而角色绑定则描述了角色和subject(如用户,用户组)的绑定关系 角色定义Rolek8s中角色是和命名空间绑定的, ...
阅读更多
K8s记录-访问方式
认证认证解决的是用户身份识别的问题,即用户是否是合法的用户 k8s中的用户 所有 Kubernetes 集群都有两类用户:由 Kubernetes 管理的服务账号和普通用户Kubernetes 假定普通用户是由一个与集群无关的服务通过以下方式之一进行管理的: 负责分发私钥的管理员 类似 Keystone 或者 Google Accounts 这类用户数据库 包含用户名和密码列表的文件 有鉴于此,Kubernetes 并不包含用来代表普通用户账号的对象。 普通用户的信息无法通过 API 调用添 ...
阅读更多
K8s记录-ConfigMap
创建方式 通过命令行指定参数创建,--from-literal 1kubectl create configmap test --from-literal redis.host=1234 --from-literal redis.password=123456 通过指定文件/目录创建,--from-file=<文件>/<文件夹> 文件 1kubectl create configmap test --from-file test.properties 文件 ...
阅读更多
OSS搭建个人博客和自动部署
准备 阿里云单独准备一个OSS的Bucket来搭建博客 准备好一个国内的域名,如果没有可以申请,从申请到拿到估计20天左右,有了域名还可以配合picgo做自己的图床 使用静态博客生成的文件,我这里使用hexo Bucket配置配置读写权限设置读写权限为公共读 配置博客首页 上传文件到OSS将public下的文件全部上传到bucket的根目录 绑定域名到Bucket 这里如果是在阿里云申请的域名的,会自动在云解析上添加cname记录,如果不是的话需要自己在自己的域名解析服务商上添加cname ...
阅读更多
Nacos探索和实践
默认以spring cloud项目来描述使用方式 使用的版本 spring-boot:2.1.x spring-cloud:Greenwich.RELEASE spring-cloud-alibaba:2.1.x java:1.8+ Nacos服务端服务端相当于euraka和spring-cloud-config的集合,Nacos的web页面,服务注册,和配置全部在服务端上 注册中心注册中心和eureka差不多,只是Nacos提供了不同的页面,不过可以在服务详情里通过页面控制服务的上下线,这 ...
阅读更多
数据库如何存储时间
参考: https://juejin.im/post/5e1d494a5188254c45778a14 不要使用字符串存储时间问题: 字符串占用的空间更大 比较效率低(逐个字符比较),无法用日期相关的API进行计算 Datetime和Timestamp一般来讲选择Timestamp,why? 从时区上: Datetime类型保存的时间都是当前会话所设置的时区对应的时间,如果时区更换后,就会导致从数据库读取的时间有问题,而Timestamp是和时区有关的,他的值会随着时区的变化而变 ...
阅读更多
mysql锁
按照使用方式,锁分为: 悲观锁 乐观锁 乐观锁概念就不细讲了,乐观锁和悲观锁的区别是乐观锁是假设在修改数据之前,所有的数据都不会有改变,只会在修改数据的时候才会去验证数据。乐观锁的实现mysql没有默认方法。可以自己手动实现,如增加一个字段version,每次去查询数据的时候把这个字段查出来,修改的时候检查这个字段是否和查出来的一致,如果一致,就修改,否则就抛出异常或者回滚。 引用参数考中的例子: 123456//step1: 查询出商品信息select (quantity,version) ...
阅读更多
mysql的join语句
参考: https://segmentfault.com/a/1190000015572505 https://www.cnblogs.com/beginman/p/3754322.html https://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins https://www.cnblogs.com/beginman/p/3754322.html Inner Join 数据包含关系如上图 ...
阅读更多