centos下安装
1234567891011121314sudo rpm -Uvh mysql-community-release-el7-5.noarch.rpmyum repolist all | grep mysqlsudo yum install mysql-community-serveryum -y install mysql57-community-release-el7-10.noarch.rpmyum -y install mysql-community-serversystemctl start mysqld.servicesystemctl status mysqld.service
1234sudo service mysqld stop
网址https://blog.csdn.net/polaris3012/article/details/129216638
centos 下安装jdk1.8
第一种通过yum 安装
12345678910111213141516171819// 更新 yum yum -y update// 查找jdkyum search java|grep jdk// 安装命令yum install java-1.8.0-openjdkyum load-transaction /tmp/yum_save_tx.2021-12-11.13-30.uGD_Sw.yumtx// 验证是否安装好java -version//yum源快速安装//查找能够安装的 jdk 版本yum -y list java*安装jdk1.8 yum install java-1.8.0-openjdk.x86_64 java-1.8.0-openjdk-devel.x86_64
通过 官网下载安装包方式
123456789101112131415161718192021// 查看linux自带java 包rpm -qa | grep java// 然后通过 rpm -e --nodeps 后面跟系统自带的jdk名 这个命令来删除系统自带的jdk例如:rpm -e - ...
centos 安装nginx
下载安装包
1wget http://nginx.org/download/nginx-1.25.3.tar.gz
安装对应的依赖库
12345678910111213yum install gcc-c++yum install pcreyum install pcre-develyum install zlibyum install zlib-develyum install opensslyum install openssl-devel
解压安装包
1tar -xzvf nginx-1.16.0.tar.gz
拷贝文件到/usr/local
1mv nginx-1.16.0 /usr/local
在nginx 目录下执行
12345./configure// 编译make// 安装make install
配置nginx 自启动切换到/lib/systemd/system目录,创建nginx.service文件
1234567891011121314[Unit]Description=nginxAfter=network ...
centos 安装redis
检查依赖
1234gcc -v// 没有就在线安装yum install gcc-c++
安装redis下载 redis 安装包
1wget https://download.redis.io/releases/redis-6.2.6.tar.gz
解压
1tar -zxvf redis-6.2.6.tar.gz
使用root用户添加redis用户和组
1useradd redis
.执行make指令编译, 并指定安装目录
1make install PREFIX=/usr/local/redis
启动 redis服务1.直接启动
1234# 进入redis安装目录cd /usr/local/redis/bin/# 启动服务./redis-server
通过守护进程启动
1234567891011# 第一步:从 redis 的源码目录中复制 redis.conf 到 redis 的安装目录cp /root/redis-6.2.6/redis.conf /usr/local/redis/bin/# 第二步:修改redis.conf配置文件cd /usr/local/re ...
只出现一次的数字 III
给你一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任意顺序 返回答案。你必须设计并实现线性时间复杂度的算法且仅使用常量额外空间来解决此问题12345678910111213141516class Solution { public int[] singleNumber(int[] nums) { Map<Integer, Integer> freq = new HashMap<Integer, Integer>(); for (int num : nums) { freq.put(num, freq.getOrDefault(num, 0) + 1); } int[] ans = new int[2]; int index = 0; for (Map.Entry<Integer, Integer> entry : freq.ent ...
在 SpringBoot 中设计一个订单号生成系统
在Spring Boot中设计一个订单号生成系统,主要考虑到生成的订单号需要满足的几个要求:唯一性、可扩展性、以及可能的业务相关性。以下是几种常见的解决方案及相应的示例代码:
UUID最简单的方法是使用UUID生成唯一的订单号。UUID(Universally Unique Identifier)是一种广泛使用的标识符,由128位组成,通常以32个十六进制数字表示,分为五组,形式为8-4-4-4-12的字符串,例如123e4567-e89b-12d3-a456-426614174000。
UUID全球唯一,实现简单,但缺点是UUID较长,不易记忆和存储。
Java中生成UUID的示例代码如下:
1234567891011121314151617181920import java.util.UUID;public class UUIDGenerator { public static String generateUUID() { // 生成一个UUID UUID uuid = UUID.randomUUID(); ...
面试题1
MySQL 索引有眼些
B+树索引:所有数据存储在叶子节点,复杂度为O(logn),适合范围查询。
哈希索引: 适合等值查询,检索效率高,一次到位。
全文索引:MyISAM和InnoDB中都支持使用全文索引,一般在文本类型char,text,varchar类型上创建。
R-Tree索引: 用来对GIS数据类型创建SPATIAL索引
物理存储维度
聚集索引:聚集索引就是以主键创建的索引,在叶子节点存储的是表中的数据。(Innodb存储引擎)
非聚集索引:非聚集索引就是以非主键创建的索引,在叶子节点存储的是主键和索引列。(Innodb存储引擎)
主键索引:一种特殊的唯一索引,不允许有空值。
普通索引:MySQL中基本索引类型,允许空值和重复值。
联合索引:多个字段创建的索引,使用时遵循最左前缀原则。
唯一索引:索引列中的值必须是唯一的,但是允许为空值。
空间索引:MySQL5.7之后支持空间索引,在空间索引这方面遵循OpenGIS几何数据模型规则。
MySQL 索引使用有哪些注展事项
对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引, ...
利用 sftp 上传文件到linux
使用 maven导入 jar包
12345<dependency> <groupId>com.jcraft</groupId> <artifactId>jsch</artifactId> <version>0.1.55</version></dependency>
创建对应的 Config信息映射
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869package com.lab.common.config;import lombok.Data;import org.springframework.boot.context.properties.ConfigurationProperties;import org.springframework.stereotype.Component; ...
利用 smb 上传文件到windows
导入maven包
123456789<dependency> <groupId>com.hierynomus</groupId> <artifactId>smbj</artifactId> <version>0.10.0</version></dependency><dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId></dependency>
在yml文件中建立配置
1234567891011windows: host: 192.168.1.105 port: 445 username: test password: test //备份目录 backupPath: backup_path //升级目录 upgradingPath: upgrading_path ...
说一下SSO 单点登录和 OAuth2.0 的区别
SSO是Single Sign On的缩写,OAuth是Open Authority的缩写,这两者都是使用令牌的方式来代替用户密码访问应用。流程上来说他们非常相似,但概念上又十分不同。SSO大家应该比较熟悉,它将登录认证和业务系统分离,使用独立的登录中心,实现了在登录中心登录后,所有相关的业务系统都能免登录访问资源。
OAuth2.0原理可能比较陌生,但平时用的却很多,比如访问某网站想留言又不想注册时使用了微信授权。以上两者,你在业务系统中都没有账号和密码,账号密码是存放在登录中心或微信服务器中的,这就是所谓的使用令牌代替账号密码访问应用。
SSO两者有很多相似之处,下面我们来解释一下这个过程。先来讲解SSO,通过SSO对比OAuth2.0,才比较好理解OAuth2.0的原理。SSO的实现有很多框架,比如CAS框架,以下是CAS框架的官方流程图。特别注意:SSO是一种思想,而CAS只是实现这种思想的一种框架而已
上面的流程大概为:
用户输入网址进入业务系统Protected App,系统发现用户未登录,将用户重定向到单点登录系统CAS Server,并带上自身地址service参数 ...
