navicat 无限试用脚本

支持 Windows 和 Mac! Windows bat:@echo offecho Delete HKEY_CURRENT_USER\Software\PremiumSoft\NavicatPremium\Registration[version and language]for /f %%i in ('"REG QUERY "HKEY_CURRENT_USER\Software\PremiumSoft\NavicatPremium" /s | findstr /L Registration"') do (reg delete %%i /va /f)echo.echo Delete Info folder under HKEY_CURRENT_USER\Software\Classes\CLSIDfor /f %%i in ('"REG QUERY "HKEY_CURRENT_USER\Software\Classes\CLSID" /s | findstr /E Info"') do (reg delete %%i /va /f)echo.echo Finishpause 激活文件下载地址:https://txx.lanzoub.com/iclta01fbi4f

Oracle 利用 sql 命令解锁被锁用户

1、查明哪些用户被锁:select username,account_status,lock_date from dba_users;状态显示 LOCKED 即被锁。2、查看指定用户是否被锁 查看某个用户 (ABCuser 这个用户) 是否被锁:select LOCK_DATE,username from dba_users where username='testuser';LOCK_DATE 为空说明没有锁定,非空为锁定。查看用户状态(是否被锁)select * from dba_users where username='testuser'3、解锁用户– 解锁 testuser 表示实例名ALTER USER testuser ACCOUNT UNLOCK;– 修改用户密码 testuser 表示实例名alter user testuser identified by newpass;

离线 Linux 安装部署 Redis 详细教程

Linux 安装部署 Redis 详细教程下载 Redis进入官网找到下载地址 https://redis.io/download解压安装 解压后进入目录安装tar xzvf redis-7.0.5.tar.gzcd redis-7.0.5make install PREFIX=/usr/local/redis配置文件,拷贝 redis.conf 到安装目录下cp redis.conf /usr/local/redis/bin/启动 启动 :进入安装目录 /usr/local/redis/bin,运行启动命令cd /usr/local/redis/bin./redis-server /usr/local/redis/bin/redis.conf开机自启 配置 redis 为后台启动vi /usr/local/redis/etc/redis.conf // 将 daemonize no 改成 daemonize yesvi /etc/rc.local // 在里面添加内容:/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf (开机调用这段开启 redis 的命令)将 redis-cli,redis-server 拷贝到 bin 下,可让 redis-cli 指令可以在任意目录下直接使用cp /usr/local/redis/bin/redis-server /usr/local/bin/cp /usr/local/redis/bin/redis-cli /usr/local/bin/设置密码 设置 redis 密码a. 运行命令:redis-clib. 查看现有的 redis 密码(可选操作,可以没有)  运行命令:config get requirepass 如果没有设置过密码的话运行结果会如下图所示c. 设置 redis 密码 运行命令:config set requirepass ****(**** 为你要设置的密码),设置成功的话会返回‘OK’字样d. 测试连接  重启 redis 服务  //(redis-cli -h 127.0.0.1 -p 6379 -a ****(**** 为你设置的密码))  输入 redis-cli 进入命令模式,使用 auth '*****' (**** 为你设置的密码)登陆 远程访问 让外网能够访问 redisa. 配置防火墙: firewall-cmd –zone=public –add-port=6379/tcp –permanent(开放 6379 端口)systemctl restart firewalld(重启防火墙以使配置即时生效)查看系统所有开放的端口:firewall-cmd –zone=public –list-portsb. 此时 虽然防火墙开放了 6379 端口,但是外网还是无法访问的,因为 redis 监听的是 127.0.0.1:6379,并不监听外网的请求。(一)把文件夹目录里的 redis.conf 配置文件里的 bind 127.0.0.1 前面加 #注释掉(二)命令:redis-cli 连接到 redis 后,通过 config get daemonize 和 config get protected-mode 是不是都为 no,如果不是,就用 config set 配置名 属性 改为 no。或者以 vim 方式编辑 redis.conf 修改也可以。如果上面步骤做完之后还是不行的话, 可以试试关掉自己虚拟机或者服务器上的防火墙。常用命令  redis-server /usr/local/redis/etc/redis.conf // 启动 redis  pkill redis // 停止 redis  卸载 redis:    rm -rf /usr/local/redis // 删除安装目录    rm -rf /usr/bin/redis-* // 删除所有 redis 相关命令脚本    rm -rf /root/download/redis-4.0.4 // 删除 redis 解压文件夹redis-server & // 加上 `&` 号使 redis 以后台程序方式运行netstat -lntp | grep 6379 // 检查端口是否在监听ps -aux | grep redis // 检查进程

离线 Linux 安装部署 Redis 详细教程

Springboot 使用 redis 及常用可视化 redis 客户端

使用 配置连接 引入依赖就略过了,idea 创建项目时候可以选择相应组件。application.properties 配置:# 指定 redis 信息 (如 host, ip, password)spring.redis.host=localhostspring.redis.port=6379#没有密码可以不用配置这个#spring.redis.password=123456代码使用Controller 文件package com.chen.classify;import org.springframework.data.redis.core.RedisTemplate;import org.springframework.data.redis.core.StringRedisTemplate;import org.springframework.data.redis.core.ValueOperations;import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;import org.springframework.data.redis.serializer.StringRedisSerializer;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RestController;import javax.annotation.Resource;@RestControllerpublic class RedisController { /** * 需要注入 redis 模板 * * 对于 RedisTemplate 的泛型情况, * 可以使用 <String, String> * <Object, Object> * 或者不写泛型 * * 注意, 属性的名称必须为 redisTemplate, 因为按名称注入, 框架创建的对象就是这个名字的 */ @Resource private RedisTemplate redisTemplate; @Resource private StringRedisTemplate stringRedisTemplate; // 添加数据到 redis @PostMapping("/redis/addstring") public String addToRedis(String name, String value) { // 操作 Redis 中的 string 类型的数据, 先获取 ValueOperation ValueOperations valueOperations = redisTemplate.opsForValue(); // 添加数据到 redis valueOperations.set(name, value); return " 向 redis 添加 string 类型的数据 "; } // 从 redis 获取数据 @GetMapping("/redis/getk") public String getData(String key) {ValueOperations valueOperations = redisTemplate.opsForValue(); Object v = valueOperations.get(key); return "key 是 " + key + ", 它的值是:" + v; } @PostMapping("/redis/{k}/{v}") public String addStringKV(@PathVariable String k, @PathVariable String v) { // 使用 StringRedisTemplate 对象 stringRedisTemplate.opsForValue().set(k,v); return " 使用 StringRedisTemplate 对象添加 "; } @GetMapping("/redis/{k}") public String getStringValue(@PathVariable String k) { // 获取 String 类型的 value String v = stringRedisTemplate.opsForValue().get(k); return " 从 redis 中通过 " + k + " 获取到 string 类型的 v =" + v; } /** 设置 RedisTemplate 序列化机制 * 可以设置 key 的序列化, 也可以设置 value 的序列化 * 也可以同时设置 */ @PostMapping("/redis/addstr") public String addString(String k, String v) { // 设置 RedisTemplate 的序列化机制 // 设置 key 为 string 类型的序列化 redisTemplate.setKeySerializer(new StringRedisSerializer()); // 设置 value 的序列化 redisTemplate.setValueSerializer(new StringRedisSerializer()); redisTemplate.opsForValue().set(k, v); return " 添加了 k 和 v "; } /** * 使用 json 序列化 */ @PostMapping("/redis/addjson") public String addJson() {Student student = new Student(); student.setName("zhangsan"); student.setAge(20); student.setId(1); // 设置 key 为 string 的序列化方式 redisTemplate.setKeySerializer(new StringRedisSerializer()); // 设置 value 为 json 的序列化方式,json 为 Student 类型的方式组织, 所以需要传入 Student.class redisTemplate.setValueSerializer(new Jackson2JsonRedisSerializer(Student.class)); redisTemplate.opsForValue().set("myStudent", student); return " 存入 json 类型的数据 student"; }}实体类package com.chen.classify;import java.io.Serializable;public class Student implements Serializable { private static final long serialVersionUID = -7839813688155519106L; private Integer id; private String name; private Integer age; public Integer getId() {return id;} public void setId(Integer id) {this.id = id;} public String getName() {return name;} public void setName(String name) {this.name = name;} public Integer getAge() {return age;} public void setAge(Integer age) {this.age = age;}}StringRedisTemplate 和 RedisTemplate上面说到了这两者在存取中的差异StringRedisTemplate : 这个类将 key 和 value 都做 String 处理, 使用的是 String 的序列化, 可读性好RedisTemplate : 把 key 和 value 经过了序列化,key 和 value 都是序列化的内容, 不能直接识别, 默认使用的是 JDK 的序列化, 可以修改为其他的序列化 序列化作用 :序列化是将对象转换为可传输字节序列的过程, 反序列化是将字节序列还原为原对象的过程. 序列化最终的目的是为了对象可以跨平台存储和进行网络的传输序列化的方式 :序列化只是一种拆装对象的规则, 那么这种规则也就多种多样, 常见的有 JDK(不支持跨语言),json,xml,Hessian 等 我们上面的 RedisTemplate 类的存储就是 JDK 方式的java 的序列化 : 把 java 对象转换为 byte[], 二进制数据 json 序列化 : json 序列化功能将对象转换为 json 格式或者将其转换回对象, 如 Student 对象转换为{“name”:“张三”,“age”:“20”}参考:springboot 使用 redis_迷亭君的博客 -CSDN 博客_redis 在 springboot 中的使用Redis 连接工具 / 客户端MySQL 可以使用 Navicat 等连接工具,但是能连接 redis 的并不多,接下来介绍两款,并附上下载地址。RedisViewRedisView 是一个 redis 数据库 GUI 工具,提供简单的添加,删除,更改和基本命令,支持集群模式。复制集或群集模式只需填写 IP 和端口。1、Redis 数据库视图工具,提供 CURD 功能2、提供基本命令运行3、支持单例、复制集、哨兵、集群模式4、支持订阅发布模式5、支持批量删除、oracle 与 mysql 导入导出、Oracle 与 mysql 表键删除6、支持中英文、设置编码、设置皮肤7、支持千万级数据操作源代码:https://github.com/cc20110101/RedisView更多使用信息:https://blog.csdn.net/cc20110101/article/details/87301562下载:RedisView 下载 |SourceForge.netQuickRedisQuickRedis 是一款 永久免费 的 Redis 可视化管理工具。它支持 直连、哨兵、集群 模式,支持亿万数量级的 key,还有令人兴奋的 UI。QuickRedis 支持 Windows 、 Mac OS X 和 Linux 下运行。QuickRedis 是一个效率工具,当别人在努力敲命令的时候,而你已经在喝茶。Gitee:QuickRedis: QuickRedis 是一款 永久免费 的 Redis 可视化管理工具。它支持直连、哨兵、集群模式,支持亿万数量级的 key,还有令人兴奋的 UI。QuickRedis 支持 Windows 、 Mac OS X 和 Linux 下运行。 (gitee.com)Github:https://github.com/quick123official/quick_redis_blog下载地址https://gitee.com/quick123official/quick_redis_blog/releases/https://github.com/quick123official/quick_redis_blog/releases/Another Redis DeskTop ManagerAnother Redis DeskTop Manager 是 GitHub 上的一个开源项目,是 Redis 可视化管理的利器,提供在 Windows、MacOS 平台的安装包,体积小,完全免费。github:https://github.com/qishibo/AnotherRedisDesktopManager

Springboot 使用 redis 及常用可视化 redis 客户端

Redis 简介与基础使用教程

Redis1. 概念: redis 是一款高性能的 NOSQL 系列的非关系型数据库 1.1. 什么是 NOSQL NoSQL(NoSQL = Not Only SQL),意即“不仅仅是 SQL”,是一项全新的数据库理念,泛指非关系型的数据库。 随着互联网 web2.0 网站的兴起,传统的关系数据库在应付 web2.0 网站,特别是超大规模和高并发的 SNS 类型的 web2.0 纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL 数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。 1.1.1. NOSQL 和关系型数据库比较 优点: 1)成本:nosql 数据库简单易部署,基本都是开源软件,不需要像使用 oracle 那样花费大量成本购买使用,相比关系型数据库价格便宜。 2)查询速度:nosql 数据库将数据存储于缓存之中,关系型数据库将数据存储在硬盘中,自然查询速度远不及 nosql 数据库。 3)存储数据的格式:nosql 的存储格式是 key,value 形式、文档形式、图片形式等等,所以可以存储基础类型以及对象或者是集合等各种格式,而数据库则只支持基础类型。 4)扩展性:关系型数据库有类似 join 这样的多表查询机制的限制导致扩展很艰难。 缺点: 1)维护的工具和资料有限,因为 nosql 是属于新的技术,不能和关系型数据库 10 几年的技术同日而语。 2)不提供对 sql 的支持,如果不支持 sql 这样的工业标准,将产生一定用户的学习和使用成本。 3)不提供关系型数据库对事务的处理。 1.1.2. 非关系型数据库的优势: 1)性能 NOSQL 是基于键值对的,可以想象成表中的主键和值的对应关系,而且不需要经过 SQL 层的解析,所以性能非常高。 2)可扩展性同样也是因为基于键值对,数据之间没有耦合性,所以非常容易水平扩展。 1.1.3. 关系型数据库的优势: 1)复杂查询可以用 SQL 语句方便的在一个表以及多个表之间做非常复杂的数据查询。 2)事务支持使得对于安全性能很高的数据访问要求得以实现。对于这两类数据库,对方的优势就是自己的弱势,反之亦然。 1.1.4. 总结 关系型数据库与 NoSQL 数据库并非对立而是互补的关系,即通常情况下使用关系型数据库,在适合使用 NoSQL 的时候使用 NoSQL 数据库, 让 NoSQL 数据库对关系型数据库的不足进行弥补。 一般会将数据存储在关系型数据库中,在 nosql 数据库中备份存储关系型数据库的数据 1.2. 主流的 NOSQL 产品 • 键值 (Key-Value) 存储数据库 相关产品: Tokyo Cabinet/Tyrant、Redis、Voldemort、Berkeley DB 典型应用: 内容缓存,主要用于处理大量数据的高访问负载。 数据模型: 一系列键值对 优势: 快速查询 劣势: 存储的数据缺少结构化 • 列存储数据库 相关产品:Cassandra, HBase, Riak 典型应用:分布式的文件系统 数据模型:以列簇式存储,将同一列数据存在一起 优势:查找速度快,可扩展性强,更容易进行分布式扩展 劣势:功能相对局限 • 文档型数据库 相关产品:CouchDB、MongoDB 典型应用:Web 应用(与 Key-Value 类似,Value 是结构化的) 数据模型: 一系列键值对 优势:数据结构要求不严格 劣势: 查询性能不高,而且缺乏统一的查询语法 • 图形 (Graph) 数据库 相关数据库:Neo4J、InfoGrid、Infinite Graph 典型应用:社交网络 数据模型:图结构 优势:利用图结构相关算法。 劣势:需要对整个图做计算才能得出结果,不容易做分布式的集群方案。 1.3 什么是 Redis Redis 是用 C 语言开发的一个开源的高性能键值对(key-value)数据库,官方提供测试数据,50 个并发执行 100000 个请求, 读的速度是 110000 次 /s, 写的速度是 81000 次 /s ,且 Redis 通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止 Redis 支持的键值数据类型如下: 1) 字符串类型 string 2) 哈希类型 hash 3) 列表类型 list 4) 集合类型 set 5) 有序集合类型 sortedset 1.3.1 redis 的应用场景 • 缓存(数据查询、短连接、新闻内容、商品内容等等) • 聊天室的在线好友列表 • 任务队列。(秒杀、抢购、12306 等等) • 应用排行榜 • 网站访问统计 • 数据过期处理(可以精确到毫秒 • 分布式集群架构中的 session 分离2. 下载安装 1. 官网:https://redis.io 2. 中文网:http://www.redis.net.cn/ 3. 解压直接可以使用: * redis.windows.conf:配置文件 * redis-cli.exe:redis 的客户端 * redis-server.exe:redis 服务器端 4. 连接命令:redis-cli.exe -h 127.0.0.1 -p 63793. 命令操作 1. redis 的数据结构: * redis 存储的是:key,value 格式的数据,其中 key 都是字符串,value 有 5 种不同的数据结构 * value 的数据结构: 1) 字符串类型 string 2) 哈希类型 hash : map 格式 3) 列表类型 list : linkedlist 格式。支持重复元素 4) 集合类型 set : 不允许重复元素 5) 有序集合类型 sortedset:不允许重复元素,且元素有顺序 2. 字符串类型 string 1. 存储: set key value 127.0.0.1:6379> set username zhangsan OK 2. 获取: get key 127.0.0.1:6379> get username "zhangsan" 3. 删除: del key 127.0.0.1:6379> del age (integer) 1 3. 哈希类型 hash 1. 存储: hset key field value 127.0.0.1:6379> hset myhash username lisi (integer) 1 127.0.0.1:6379> hset myhash password 123 (integer) 1 2. 获取: * hget key field: 获取指定的 field 对应的值 127.0.0.1:6379> hget myhash username "lisi" * hgetall key:获取所有的 field 和 value 127.0.0.1:6379> hgetall myhash 1) "username" 2) "lisi" 3) "password" 4) "123" 3. 删除: hdel key field 127.0.0.1:6379> hdel myhash username (integer) 1 4. 列表类型 list: 可以添加一个元素到列表的头部(左边)或者尾部(右边) 1. 添加: 1. lpush key value: 将元素加入列表左表 2. rpush key value:将元素加入列表右边 127.0.0.1:6379> lpush myList a (integer) 1 127.0.0.1:6379> lpush myList b (integer) 2 127.0.0.1:6379> rpush myList c (integer) 3 2. 获取: * lrange key start end :范围获取 127.0.0.1:6379> lrange myList 0 -1 1) "b" 2) "a" 3) "c" 3. 删除: * lpop key: 删除列表最左边的元素,并将元素返回 * rpop key: 删除列表最右边的元素,并将元素返回 5. 集合类型 set : 不允许重复元素 1. 存储:sadd key value 127.0.0.1:6379> sadd myset a (integer) 1 127.0.0.1:6379> sadd myset a (integer) 0 2. 获取:smembers key: 获取 set 集合中所有元素 127.0.0.1:6379> smembers myset 1) "a" 3. 删除:srem key value: 删除 set 集合中的某个元素 127.0.0.1:6379> srem myset a (integer) 1 6. 有序集合类型 sortedset:不允许重复元素,且元素有顺序. 每个元素都会关联一个 double 类型的分数。redis 正是通过分数来为集合中的成员进行从小到大的排序。 1. 存储:zadd key score value 127.0.0.1:6379> zadd mysort 60 zhangsan (integer) 1 127.0.0.1:6379> zadd mysort 50 lisi (integer) 1 127.0.0.1:6379> zadd mysort 80 wangwu (integer) 1 2. 获取:zrange key start end [withscores] 127.0.0.1:6379> zrange mysort 0 -1 1) "lisi" 2) "zhangsan" 3) "wangwu" 127.0.0.1:6379> zrange mysort 0 -1 withscores 1) "zhangsan" 2) "60" 3) "wangwu" 4) "80" 5) "lisi" 6) "500" 3. 删除:zrem key value 127.0.0.1:6379> zrem mysort lisi (integer) 1 7. 通用命令 1. keys * : 查询所有的键 2. type key : 获取键对应的 value 的类型 3. del key:删除指定的 key value4. 持久化 1. redis 是一个内存数据库,当 redis 服务器重启,获取电脑重启,数据会丢失,我们可以将 redis 内存中的数据持久化保存到硬盘的文件中。 2. redis 持久化机制: 1. RDB:默认方式,不需要进行配置,默认就使用这种机制 * 在一定的间隔时间中,检测 key 的变化情况,然后持久化数据 1. 编辑 redis.windwos.conf 文件 # after 900 sec (15 min) if at least 1 key changed save 900 1 # after 300 sec (5 min) if at least 10 keys changed save 300 10 # after 60 sec if at least 10000 keys changed save 60 10000 2. 重新启动 redis 服务器,并指定配置文件名称 D:\JavaWeb2018\day23_redis\ 资料 \redis\windows-64\redis-2.8.9>redis-server.exe redis.windows.conf 2. AOF:日志记录的方式,可以记录每一条命令的操作。可以每一次命令操作后,持久化数据 1. 编辑 redis.windwos.conf 文件 appendonly no(关闭 aof) --> appendonly yes (开启 aof) # appendfsync always : 每一次操作都进行持久化 appendfsync everysec : 每隔一秒进行一次持久化 # appendfsync no : 不进行持久化5. Java 客户端 Jedis * Jedis: 一款 java 操作 redis 数据库的工具. * 使用步骤: 1. 下载 jedis 的 jar 包 2. 使用 //1. 获取连接 Jedis jedis = new Jedis("localhost",6379); //2. 操作 jedis.set("username","zhangsan"); //3. 关闭连接 jedis.close();​ * Jedis 操作各种 redis 中的数据结构 1) 字符串类型 string set get //1. 获取连接 Jedis jedis = new Jedis();// 如果使用空参构造,默认值 "localhost",6379 端口 //2. 操作 // 存储 jedis.set("username","zhangsan"); // 获取 String username = jedis.get("username"); System.out.println(username); // 可以使用 setex()方法存储可以指定过期时间的 key value jedis.setex("activecode",20,"hehe");// 将 activecode:hehe 键值对存入 redis,并且 20 秒后自动删除该键值对 //3. 关闭连接 jedis.close(); 2) 哈希类型 hash : map 格式 hset hget hgetAll //1. 获取连接 Jedis jedis = new Jedis();// 如果使用空参构造,默认值 "localhost",6379 端口 //2. 操作 // 存储 hash jedis.hset("user","name","lisi"); jedis.hset("user","age","23"); jedis.hset("user","gender","female"); // 获取 hash String name = jedis.hget("user", "name"); System.out.println(name);​ // 获取 hash 的所有 map 中的数据 Map<String, String> user = jedis.hgetAll("user"); // keyset Set<String> keySet = user.keySet(); for (String key : keySet) { // 获取 value String value = user.get(key); System.out.println(key + ":" + value); } //3. 关闭连接 jedis.close(); 3) 列表类型 list : linkedlist 格式。支持重复元素 lpush / rpush lpop / rpop lrange start end : 范围获取 //1. 获取连接 Jedis jedis = new Jedis();// 如果使用空参构造,默认值 "localhost",6379 端口 //2. 操作 // list 存储 jedis.lpush("mylist","a","b","c");// 从左边存 jedis.rpush("mylist","a","b","c");// 从右边存 // list 范围获取 List<String> mylist = jedis.lrange("mylist", 0, -1); System.out.println(mylist); // list 弹出 String element1 = jedis.lpop("mylist");//c System.out.println(element1); String element2 = jedis.rpop("mylist");//c System.out.println(element2); // list 范围获取 List<String> mylist2 = jedis.lrange("mylist", 0, -1); System.out.println(mylist2); //3. 关闭连接 jedis.close(); 4) 集合类型 set : 不允许重复元素 sadd smembers: 获取所有元素 //1. 获取连接 Jedis jedis = new Jedis();// 如果使用空参构造,默认值 "localhost",6379 端口 //2. 操作​ // set 存储 jedis.sadd("myset","java","php","c++"); // set 获取 Set<String> myset = jedis.smembers("myset"); System.out.println(myset); //3. 关闭连接 jedis.close(); 5) 有序集合类型 sortedset:不允许重复元素,且元素有顺序 zadd zrange //1. 获取连接 Jedis jedis = new Jedis();// 如果使用空参构造,默认值 "localhost",6379 端口 //2. 操作 // sortedset 存储 jedis.zadd("mysortedset",3," 亚瑟 "); jedis.zadd("mysortedset",30," 后裔 "); jedis.zadd("mysortedset",55," 孙悟空 "); // sortedset 获取 Set<String> mysortedset = jedis.zrange("mysortedset", 0, -1); System.out.println(mysortedset);​ //3. 关闭连接 jedis.close();​ * jedis 连接池: JedisPool * 使用: 1. 创建 JedisPool 连接池对象 2. 调用方法 getResource()方法获取 Jedis 连接 //0. 创建一个配置对象 JedisPoolConfig config = new JedisPoolConfig(); config.setMaxTotal(50); config.setMaxIdle(10); //1. 创建 Jedis 连接池对象 JedisPool jedisPool = new JedisPool(config,"localhost",6379); //2. 获取连接 Jedis jedis = jedisPool.getResource(); //3. 使用 jedis.set("hehe","heihei");​ //4. 关闭 归还到连接池中 jedis.close(); * 连接池工具类 public class JedisPoolUtils { private static JedisPool jedisPool; static{ // 读取配置文件 InputStream is = JedisPoolUtils.class.getClassLoader().getResourceAsStream("jedis.properties"); // 创建 Properties 对象 Properties pro = new Properties(); // 关联文件 try {pro.load(is); } catch (IOException e) {e.printStackTrace(); } // 获取数据,设置到 JedisPoolConfig 中 JedisPoolConfig config = new JedisPoolConfig(); config.setMaxTotal(Integer.parseInt(pro.getProperty("maxTotal"))); config.setMaxIdle(Integer.parseInt(pro.getProperty("maxIdle"))); // 初始化 JedisPool jedisPool = new JedisPool(config,pro.getProperty("host"),Integer.parseInt(pro.getProperty("port")));​​ }​ /** * 获取连接方法 */ public static Jedis getJedis(){return jedisPool.getResource(); } }

Windows 上 MySQL 5.7 安装教程

下载MySQL :: Download MySQL Community Server (Archived Versions) https://downloads.mysql.com/archives/community/ 选择 5.7.* 版本,然后选择 zip 文件进行下载解压 将下载的文件解压到自己安装软件的目录设置环境变量 依次点击 此电脑 — 属性 — 高级系统设置 — 环境变量,然后新建系统变量MYSQL_HOME后面接 MySQL 安装目录在 “Path”变量中添加%MYSQL_HOME%\bin创建数据目录与配置文件 在安装目录中分别创建 data 和uploads文件夹,分别存放 MySQL 数据和导入导出文件。在安装目录中创建 my.ini 文件,涉及到目录文件的跟进自己情况做修改。注意,Windows 配置文件中文件夹路径分隔符须为左斜杠,或双右斜杠,否则某些会被转义不被识别。[mysqld]port=3306character_set_server=utf8basedir=C:/Software/mysql-5.7.28datadir=C:/Software/mysql-5.7.28/dataserver-id=1sql_mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIONlower_case_table_names=1innodb_file_per_table = 1log_timestamps=SYSTEMlog-error = error.logslow_query_log = 1slow_query_log_file = slow.loglong_query_time = 5log-bin = binlogbinlog_format = rowexpire_logs_days = 15log_bin_trust_function_creators = 1secure-file-priv=C:/Softwaremysql-5.7.28/uploads[client] default-character-set=utf8初始化 进入命令行,切换到 MySQL 的 HOME 目录,然后执行mysqld --initialize-insecure,这种形式默认无密码。若想让初始密码保存在日志文件中,可以使用 mysqld --initialize,之后可以在/data/error.log 中查看默认密码。若想让初始密码显示在控制台可以使用mysqld --initialize --console若在初始化提示缺少 msvcp120.dll,请直接百度搜索安装”vc++2013”即可安装并启动 切换到 bin 目录中,执行 mysqld -install MySQL57 安装,然后再执行 net start MySQL57 启动 MySQLcd binmysqld –install MySQL57net start MySQL57设置登录密码 先使用 mysql -uroot 登录 MySQLmysql -uroot如果你在配置文件中更改了端口,导致无法登陆,可使用mysql -h127.0.0.1 -P13306 -uroot -p-h:指“主机”这里本地用 localhost;-P大写(port 的缩写): 端口号默认的是 3306;-u:用户(用户以后会有别的用户名);-p:密码;设置本地登录密码为“Root-123”和远程登录密码“Root-123456”SET PASSWORD FOR 'root'@'localhost'= "Root-123";GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Root-123456' WITH GRANT OPTION;刷新FLUSH PRIVILEGES;

Windows 上 MySQL 5.7 安装教程

oracle 11g 安装教程

oracle 11g 安装教程第一步:下载服务端 Oracle 11g 安装包。下载地址:链接:https://pan.baidu.com/s/1ewWtg-hQnB38C27sofA2jA提取码:qwer官方网站下载地址:http://download.oracle.com/otn/nt/oracle11g/112010/win64_11gR2_client.ziphttp://download.oracle.com/otn/nt/oracle11g/112010/win64_11gR2_database_1of2.ziphttp://download.oracle.com/otn/nt/oracle11g/112010/win64_11gR2_database_2of2.zip注意:下载 OTN 上的这些软件,你需要一个 OTN 免费帐号,不过如果通过迅雷进行下载,就不用登陆 OTN 了。也可自行在官方网站内下载其他 Oracle 客户端或图形界面工具版本:https://www.oracle.com/database/technologies/instant-client/downloads.html第二步:Oracle 11g 服务端安装1、解压已经下载的文件,将两个压缩文件包同时解压到同一个目录下,点击“确定”。如下图所示: 2、打开安装包路径,找到【setup.exe】双击安装。如下图所示:3、安装前请确保电脑或服务器已经安装好 microsoft .net framework 3.5。如不知如何进行安装,可参考(点击后边文字即刻跳转):如何在内网环境下离线安装.NET Framework3.5。双击安装等待。弹出安装窗口,配置安全更新,如图所示,点“下一步”,提示未提供邮件地址,点“是”跳过。 4、安装选项配置,如图所示,点击“下一步” 5、系统类配置,可根据自己需求进行选择。这里选择“桌面类”安装。 6、典型安装配置,可按实际情况修改安装路径,输入管理口令后点“下一点”。 因为是学习环境,所以口令输入比较简单,会提示密码复杂度校验提醒,安装会有如下提示,点“是”跳过即可。 7、先决条件检查,物理环境检查无问题,进度条 100%,安装自动跳转到下个安装界面。 8、概要配置界面预览,如下图所示,点“完成”开始安装产品,等待,大概 20 分钟左右。 安装过程中弹出“创建克隆数据库正在进行”,继续等待即可。 弹框,可查看“口令管理”,建议点点看看就可以了,除非要测试练习,可以取消锁定某些用户,点击口令管理下的“确定”。 9、数据库创建完成,点击“关闭”即可。 到此 Oracle 就安装完成了。————————————————以上为 CSDN 博主「SQL 数据库运维」的原创文章,原文链接:https://blog.csdn.net/weixin_46329056/article/details/125451601密码配置地址:https://localhost:1158/em/console/logon/logon˂a name=网络连接配置 href="#"˃ 网络连接配置 plsql 连接数据库,用户 system, 密码是安装时输入的口令,因为我是其他服务器安装的 Oracle 服务,现在使用自己电脑通过远程访问 10.8.26.253/orcl,全局数据库是 orcl 连接报错:ORA-12514。检查服务器端防火墙是否开启,如开启,关闭防火墙重试,这里检查发现防火墙并未开启,不是防火墙的原因造成。再次排查,去服务器端检查监听服务是否已开启,结果是监听服务正常启动;如仍不确定是否是监听服务造成的无法连接,也可重新再配置下监听服务,如下图所示,按步骤操作即可重新配置:查看监听进程在 Net Configuration Assistant 中配置如下监听服务重新配置后,再次尝试连接,仍提示错误,无法连接。继续排查,检查服务端 tnsnames.ora、listener.ora 文件是否配置正确,文件路径(Oracle 数据库安装路径)F:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN 找到文件 tnsnames.ora、listener.ora,查看 tnsnames.ora,HOST 内的参数显示 localhost,更改 HOST 内的相关参数配置为本机名称或 IP 地址。修改完成保存,把 oracle 相关服务重启一下,再次打开 PL/SQL Developer————————————————原文链接:https://blog.csdn.net/weixin_46329056/article/details/125451601https://blog.csdn.net/sulia1234567890/article/details/121648240

oracle 11g 安装教程

INSERT INTO SELECT 语句用法

SQL INSERT INTO SELECT 语句 INSERT INTO 插入一行数据可以是INSERT INTO Persons (LastName, Address) VALUES ('cway', 'Hometown')插入多行可以使用 INSERT INTO SELECT 将一个表数据复制到另一个表INSERT INTO Websites (name, country)SELECT app_name, country FROM apps;SELECT INTOselect into from 和 insert into select 都是用来复制表两者的主要区别为: select into from 要求目标表不存在,因为在插入时会自动创建;insert into select from 要求目标表存在。\1. 复制表结构及其数据:create table table_name_new as select * from table_name_old\2. 只复制表结构:create table table_name_new as select * from table_name_old where 1=2;或者:create table table_name_new like table_name_old\3. 只复制表数据:如果两个表结构一样:insert into table_name_new select * from table_name_old如果两个表结构不一样:insert into table_name_new(column1,column2...) select column1,column2... from table_name_old\4.SELECT INTOSELECT LastName,FirstnameINTO Persons_backupFROM PersonsWHERE City='Beijing

oracle to_date()24 小时制表示法及 mm 分钟的正确写法

一、在使用 Oracle 的 to_date 函数来做日期转换时,很多 Java 程序员也许会直接的采用“yyyy-MM-dd HH:mm:ss”的格式作为格式进行转换,但是在 Oracle 中会引起错误:“ORA 01810 格式代码出现两次”。 如: select to_date(' 2005-01-01 13:14:20 ', ' yyyy-MM-dd HH24:mm:ss ') from dual; 原因是 SQL 中不区分大小写,MM 和 mm 被认为是相同的格式代码,所以 Oracle 的 SQL 采用了 mi 代替分钟。select to_date(' 2005-01-01 13:14:20 ', ' yyyy-MM-dd HH24:mi:ss ') from dual; 二、另要以 24 小时的形式显示出来要用 HH24select to_char(sysdate, ' yyyy-MM-dd HH24:mi:ss ') from dual; // mi 是分钟select to_char(sysdate, ' yyyy-MM-dd HH24:mm:ss ') from dual; // mm 会显示月份 oracle 中的 to_date 参数含义 1. 日期格式参数含义说明 D 一周中的星期几 DAY 天的名字,使用空格填充到 9 个字符 DD 月中的第几天 DDD 年中的第几天 DY 天的简写名 IW ISO 标准的年中的第几周 IYYY ISO 标准的四位年份 YYYY 四位年份 YYY,YY,Y 年份的最后三位,两位,一位 HH 小时,按 12 小时计 HH24 小时,按 24 小时计 MI 分 SS 秒 MM 月 Mon 月份的简写 Month 月份的全名 W 该月的第几个星期 WW 年中的第几个星期 1. 日期时间间隔操作   当前时间减去 7 分钟的时间    select sysdate,sysdate - interval ' 7 ' MINUTE from dual  当前时间减去 7 小时的时间    select sysdate - interval ' 7 ' hour from dual  当前时间减去 7 天的时间    select sysdate - interval ' 7 ' day from dual  当前时间减去 7 月的时间    select sysdate,sysdate - interval ' 7 ' month from dual  当前时间减去 7 年的时间    select sysdate,sysdate - interval ' 7 ' year from dual  时间间隔乘以一个数字    select sysdate,sysdate - 8 *interval ' 2 ' hour from dual 2. 日期到字符操作 select sysdate,to_char(sysdate, ' yyyy-mm-dd hh24:mi:ss ') from dualselect sysdate,to_char(sysdate, ' yyyy-mm-dd hh:mi:ss ') from dualselect sysdate,to_char(sysdate, ' yyyy-ddd hh:mi:ss ') from dualselect sysdate,to_char(sysdate, ' yyyy-mm iw-d hh:mi:ss ') from dual  参考 oracle 的相关关文档 (ORACLE901DOC/SERVER. 901/A90125/SQL_ELEMENTS4.HTM# 48515) 字符到日期操作 select to_date(‘ 2003-10-17 21:15:37 ‘, ‘ yyyy-mm-dd hh24:mi:ss ‘) from dual   具体用法和上面的 to_char 差不多。trunk/ ROUND 函数的使用 select trunc(sysdate , ‘ YEAR ‘) from dual    select trunc(sysdate) from dual    select to_char(trunc(sysdate , ‘ YYYY ‘), ‘ YYYY ‘) from dual5.oracle 有毫秒级的数据类型   –返回当前时间 年月日小时分秒毫秒    select to_char(current_timestamp( 5), ‘ DD-MON-YYYY HH24:MI:SSxFF ‘) from dual;   –返回当前时间的秒毫秒,可以指定秒后面的精度 (最大 = 9)    select to_char(current_timestamp( 9), ‘ MI:SSxFF ‘) from dual;6. 计算程序运行的时间 (ms)  declare  type rc is ref cursor;  l_rc rc;  l_dummy all_objects.object_name%type;  l_start number default dbms_utility.get_time;  begin   for I in 1 .. 1000  loop  open l_rc for   ' select object_name from all_objects '||   ' where object_id = ' || i;  fetch l_rc into l_dummy;  close l_rc;  end loop;  dbms_output.put_line  (round( (dbms_utility.get_time-l_start)/ 100, 2 ) ||   ' seconds... ' );  end;

Oracle 数据库 PL/SQL 安装教程

˂a name=oracle10g 安装(windows) href="#"˃oracle10g 安装(windows)解压 oracle 数据库安装包,如果是 win7 或者 win10 系统右键点击 setup.exe 选择兼容性,以 xp 方式,并且以管理员方式运行,以及其他所有用户都按着此规则如图并双击解压目录下的 setup.exe,出现安装界面,如下:输入口令和确认口令(管理员密码),如:password,点击下一步,出现进度条检查先决条件,选中红框所示的选择框,如下图:点击“下一步”,出现“概要”界面,点击“安装”出现安装进度条,等待安装完成安装完成后,自动运行配置向导,如下图,等待其完成:完成后,出现“口令管理”界面,点击“口令管理”,如下图:如果测试或练习使用,将 SCOTT 和 HR 用户的沟去掉(解锁这两个账户),如下图所示,点击“确定”:回到“口令管理”界面,点击“确定”,如下图:安装结束,点击“退出”。测试是否安装成功运行 cmd 进入命令行 :sqlplus 用户名 / 密码 @ip 地址:1521/orcl [as sysdba]PLSQL Developer 安装 本机电脑使用客户端连接需instantclient_12_1,新版本兼容更高版本 oracle。下载:https://hik.lanzouy.com/iLU5Dewv4mdhttps://hik.lanzouy.com/iYUAXewv9of解压后使用,进入目录可测试连接例如sqlplus system/ 密码 @ip 地址:1521/orcl [as sysdba]quit 退出。1. 安装 plsql 安装目录不能含中文。2. 远程连接3. 在弹出的登陆窗口中,点取消,Tools->>Preferences,设置 oci 路径。4. 从安装 oracle 的虚拟机中 oracle 安装目录中找到 tnsnames.ora 拷贝至 D 盘根目录(或其它位置),编辑此文件。5. 设置环境变量 TNS_ADMIN 为 D 盘根目录(tnsnames.ora 所在目录)6. 进入系统就可以使用快捷登录了

Oracle 数据库 PL/SQL 安装教程