常用命令
netstat -tanp //查看端口进程
ll //查看当前目录下的所有文件
cd / //进入根路径
cd 目录名 //进入目录
cd .. //返回上一级
less 文件名.后缀 //查看文件
mkdir 文件名 //创建文件(夹)
cp 文件名 指定路径名 //复制文件到指定目录
tar -zxvf 文件名 //解压文件
source /etc/profile //刷新环境变量
vim /etc/profile //修改环境变量
cat /etc/redhat-release //查看当前linux系统的版本
touch 文件名.后缀 //创建文件
touch 1.txt
rm (-f/-r) 文件名.后缀 // 删除文件 -f 不询问直接删除 -r 递归删除
less 文件名.后缀 //查看文件
vim 文件名.后缀 //编辑文件
i 进入编辑文件后开始编辑
sh startup.sh //启动shell脚本 sh =shell脚本
yum install curl //安装curl 通过包管理器yum下载安装curl
curl http://www.baidu.com //发送请求
mv 原文件(夹)名 新文件(夹)名 //修改文件(夹)名
groupadd 用户组名 //新建用户组
useradd -r -g mysql mysql //添加一个用户mysql到mysql用户组下
chown -R mysql:mysql mysql-5.7.43 //给权限 把mysql-5.7.43文件夹的权限交给mysql用户组下的mysql用户
clear //清屏
```
### 代码部分介绍详解:
```
-rw-r--r--
- :- = 文件,d = 目录
rw- :文件所有者的权限
r-- :文件所在组的权限
r-- :其他用户权限
r = 读(4) , w = 写(2) , x = 可执行(1)
```
chmod -R 754 aaa mysql-5.7.43 {
文件所有者的权限: 可读可写可执行
文件所在组的权限: 可读可执行
其他用户权限 : 可读
}
chmod -R 754 aaa //修改aaa文件的权限
```
drwxr-xr-x 10 mysql mysql 4096 Nov 21 17:30 mysql-5.7.43
drwxr-xr-x //权限
10 //子目录数量
mysql mysql // 分别表示目录的所有者和所属的组
4096 // 如果是目录表示目录源数据所占用的空间 而不是 目录内容的大小
// 如果是文件 则表示文件的大小 单位 bit
Nov 21 17:30 // 创建时间
mysql-5.7.43 // 文件名称
```
```
rpm -qa|grep mari
rpm -qa //rpm包管理器 q :查询模式 a:已安装的包
| // 管道符号,用于将前一个命令的输出作为下一个命令的输入
grep //一个强大的文本搜索工具
mari //搜索的文本
```
扩展:
```
1.yum:(yellow dog updater modified)软件包管理器,会自动下载软件
sudo yum update //更新yum
sudo // superuser do 后面的命令执行的全部内容使用超级用户(root)来执行
yum install curl //安装curl
sudo yum install nginx //下载安装nginx
2.vim中移动一行代码,按esc推出编辑模式——>按下dd剪切当前行
3.find 地址(/) -name "查找文件名" 查找文件
sql:
1.初始化mysql:
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/mysql-5.7.43 --datadir=/usr/local/mysql/mysql-5.7.43/data
2. wget
wget(World Wide Web 与Get的结合)是一个命令行工具,用于从网络上自动下载文件,他支持http、https、ftp协议
3.mysql 初始密码
```
yoD-r6Rwl+ky
Umd7D:GaA*t;
```
4.Mysql目前密码:
```
?ManYue2002
```
ps:
1.初始密码忘记补救办法 :
```
rm -rf data/* //删除数据,强制初始化数据库
```
2.允许root 远程连接
```
use mysql
update user set host = '%' where user = 'root';
select host, user from user;
flush privileges;
```
mysql --version // 查看mysql的客户端是否安装
```
systemctl status mysqld
systemctl // 是linux系统中用于管理系统服务的命令行工具
1.statrt // 启动服务 //systemctl start mysqld
2.stop // 停止服务 systemctl stop mysqld
3.restart // 重启服务
4.status // 查看服务状态
```
如果忘记了密码就在etc写的my.cnf中添加(skip-grant-tables)然后重启mysql
linux执行sql语句
```
1.source /root/sql/demo-v1.0.24.sql;
2.show databases;
3.use demo;
4.select * from user;
```
nginx:
ifconfig //查看本机ip地址
redis:
sudo make install // make 安装的工具用户编译和安装应用程序,编译后的程序会被放在系统当中
redis-cli (进入ping redis命令)
&:在命令行中&符号用于在后台运行进程,即使关闭了终端或命令窗口,该进程也会继续运行
ps aux | grep redis-server:
ps: 查看当前运行的进程信息
aux:a -所有用户的进程 u- 以用户信息为主的显示 x- 显示所有进程
| :将左边命令作为输出 ,作为右边命令的输入
grep: 他是一个文本搜索命令
redis-server: 作为搜索的内容
save //讲缓存中的数据转到硬盘上
redis 密码:
?SanSui2002
redis-server & //运行redis
redis-server redis.conf & //带上配置运行redis
redis-cli -a +redis密码 //操作redis
redis-cli -h 47.109.24.254 -p 6379 -a 306709 //通过跳板机连接redis
47.109.24.254 :网管(服务器)
306709 : 密码
nacos
1.下载nacos
wget https://github.com/alibaba/nacos/releases/download/2.2.0/nacos-server-2.2.0.tar.gz
2.解压——>创库(nacos_config)
3.运行sql语句(mysql-schema.sql)
source /usr/local/nacos/nacos/conf/mysql-schema.sql
4.配置conf下的application.properties
5.sh startup.sh -m standalone //启动nacos 单机模式
6.sh startup.sh -p embedded //集群模式
ps:
启动关闭方式:
sql :
systemctl start mysqld
systemctl stop mysqld
nginx:
systemctl start nginx
systemctl stop nginx
redis:
关闭需要先查找进程
ps aux | grep redis-server
然后 通过查找出来的id 关闭进程
kill id
nacos:
关闭:
通过nacos文件夹下的 sh.shutdown.sh
启动:
sh startup.sh -m standalone //启动nacos 单例模式
sh startup.sh -p embedded //集群模式(内置)
sh startup.sh //集群模式(外置)
nacos 集群工作原理
MQ(全称 Message Queue)
消息队列,是在消息传输过程中保存信息的容器,是用于系统之间的异步通信。
异步通信:
同步通信:张三与李四你一句我一句的进行交流,除此之外,他们不做任何事情,这个我们称为同步通信。
异步通信:异步通信相当于淑芬充当二人的秘书,张三和李四只需要给淑芬说,之后就可以做自己想做的事情,当需要获取对方说话的内容时,从淑芬(消息队列)那里获取即可。
名词解析:
消息:计算机之间传递数据的单位。
队列:是数据结构当中概念,在队列中数据先进先出,后进后出,如排队打饭。
订阅:是指定为消费者服务的,消费者提前订阅,当消息队列中有消息产出时会自动获取消息,进行消费。如:订报纸
交换机:用来接收生成者发送的信息,或者将这些信息分发个服务器的队列中,不同的交换机有不同的分发规则。
MQ的优点:
在高频业务中,某个环节(服务)出现异常或故障会导致整个系统崩溃,如库存系统、支付系统、物流系统等,在引入MQ之后,服务与服务之间耦合度会大大降低,增加系统的容错性。
MQ的缺点:
引入的中间件(MQ)越多,系统的性能越低,系统的复杂度大大提高。
使用场景:
秒杀活动、抢红包、抢票、
RabbitMQ的五种工作模式
队列:
1.简单工作模式(simple)
. 2.工作队列模式(Work Queue)
订阅:
1.发布订阅模式(Publish/Subscribe)
2.路由模式(Routing)
3.通配符模式(Topic)
手动确认模式:
basicAck:成功处理
basicNack:消费者处理失败,
1.需要将这条信息重新放到队列中
2.直接将信息丢弃
basicReject:和basicNack相似。区别在于他只能拒绝一个而basicNack可以拒绝多个。
死信队列(Dead Message):
在MQ中死信队列相当于电脑中的垃圾回收站,有死信队列,就有死信交换机
死信交换机(Dead Letter Exchange)简称DLX
延迟队列:
延迟队列是指消息进入队列后不会立即被消费,当到达指定时间后才会被消费,如:用户下单30分钟后订单仍未支付则自动取消
mq账户密码:
guest ?ManYue2002
manyue ?ManYue2002
ps:
网页访问的端口是15672
代码访问时 5672
启动rabbitmq
systemctl start rabbitmq-server
关闭rabbitmq
systemctl stop rabbitmq-server
Docker()
容器和底层操作系统是相互隔离的,容器与容器之间也是相互隔离的
一、常用命令
sudo systemctl start docker :启动docker
sudo systemctl restart docker :重启docker
docker ps -a //{
查询正在运行的容器
CONTAINER ID : 容器id,启动和停止容器都使用它。
IMAGE : 镜像
COMMAND : 指令,启动容器时执行的命令
CREATED : 容器的创建时间
STATUS :状态 (up 表示正在运行中,created 表示创建已成功但未启动 exit表示容器已停止运行
PORTS : 容器使用的端口
NAMES :容器名称 端口
}
docker start 容器id :启动容器
docker stop 容器id : 停止容器
docker restart 容器id : 重启容器
docker kill 容器id : 强制停止容器(慎用 )
docker images : 查看本地有哪些镜像
docker search 镜像名 // {//搜索镜像
STARS // 点赞数
docker search -f stars=50 mysql //搜索点赞数大于50的MySQL镜像
}
docker pull mysql(要下载的镜像名) //下载镜像 (默认最新版本)
docker pull tomcat:8 //冒号后面指定版本下载,不指定为最新版本
docker rmi 镜像id // 删除某一个镜像
docker rmi -f 镜像id //强制删除某一个镜像
docker rename 容器id newName // 修改容器名字
docker run -it centos(容器id) /bin/bash // 进入centos系统
docker attach 容器id :不会启用新进程进入容器
docker exec -it 容器id /bin/bash :启动新进程,进入容器 (推荐这个进入容器)
docker logs --tail=10 --since="2023-12-06" 容器id // 查询
从宿主机复制到容器
docker cp 文件名 容器id:/root/复制过去的文件名
容器内命令:
ls -l // 查看当前目录有哪些文件和文件夹
exit // 退出容器
二、名词解析
镜像(image) : 等同于java中的类 (没有跑起来之前叫镜像)
容器(container) : 等同于java中的对象(跑起来之后叫容器)
仓库(repository) : 等同于maven ,仓库用来保存镜像
三、Docker核心思想
Docker安装mysql
docker pull mysql:5.7.43
cd ~
mkdir mysql
cd mysql/
mkdir conf
mkdir logs
mkdir data
docker run -id\
> --name=mysql_test\
> -p 3306:3306\
> -v /root/mysql/conf:/etc/mysql/conf.d\
> -v /root/mysql/logs:/logs\
> -v /root/mysql/data:/var/lib/mysql\
> -e MYSQL_ROOT_PASSWORD=?ManYue2002\
> mysql:5.7.43
docker ps -a
docker exec -it 7509340a228a /bin/bash
设置mysql 账户密码
mysql -u root -p密码
Docker安装Portainer - 中文汉化版
docker run -d \
--name=portainer-zh \
-p 9000:9000 \
-v /var/run/docker.sock:/var/run/docker.sock \
--restart=always \
6053537/portainer-ce
https://demo-test-upload.oss-cn-chengdu.aliyuncs.com/index.html
steampp //网络加速
Watt Toolkit「Watt Toolkit」是一个包含多种Steam工具功能的工具箱。https://steampp.net/