vm虚拟机释放鼠标 crtl+alt
系统设置
命令行模式切换至图形界面 init 5
图形界面切换至命令行 ctrl+alt+F2或者右键命令行
systemctl set-default graphical.target由命令行模式更改为图形界面模式
systemctl set-default multi-user.target由图形界面模式更改为命令行模式
文件相关命令
1、创建具有777权限的目录:执行 mkdir -m 777 upload
修改文件或文件夹权限,执行 #chmod -R 777 /upload
移动文件夹,执行 mv /test1/file1 /test3/file2
2、删除文件夹:rm -ir /usr/log 删除log目录
删除文件:rm -f /usr/log.txt
3、返回上级目录 cd ..
4、远程拷贝文件、文件夹,拷贝文件默认在root下
scp 文件名 服务器ip:目录 例:scp demo.txt root@192.168.10.2:/data/demo.txt
上传文件夹到对应文件夹 例:scp -rp data root@192.168.10.2:/data 将data文件夹下所有文件上传到服务器data文件夹下。
5、清空文件 truncate -s 0 nohup.out 查看文件大小 du -h nohup.out
6、性能监测命令 top -H ,分析CPU等占用情况。
===================================================================
mysql数据库相关
1、windows将数据库打包导出到sql脚本,执行 mysqldump springboot -uroot -p>springboot.sql ,打包默认到mysql安装目录bin文件夹下 。
2、导入MySQL数据库到sql脚本:新建同名数据库,进入数据库,设置编码方式 set names utf8; 导入sql数据库,执行
source /root/upload/test.sql 。
查看全部数据库 show databases; 删除数据库 drop database test; sql语句后面带分号。
3、查看数据库密码安全等级,登录MySQL,执行: SHOW VARIABLES LIKE 'validate_password%';
设置数据库密码为低安全级 set global validate_password_policy=LOW;
重置数据库root用户密码,登录MySQL,执行:ALTER USER USER() IDENTIFIED BY '新密码';
4、开启某端口,执行 firewall-cmd --zone=public --add-port=80/tcp --permanent 返回success开启成功。
5、重启防火墙 systemctl restart firewalld.service ,查看防火墙运行状态 systemctl status firewalld.service
6、msyql远程调用的配置,比如使用的是root账户,需要给root用户授权可以远程访问的主机host,不然访问报错 ;步骤如下:
1)centos7登录mysql,执行 use mysql 给root用户授权访问主机执行 update user set host = '%' where user = 'root';
2)刷新权限设置,执行 FLUSH PRIVILEGES; 即可。
=================================================================
redis相关
8、下载redis 4.0.1 执行 wget http://download.redis.io/releases/redis-4.0.6.tar.gz
9、解压缩 执行 tar -zxvf redis-4.0.1.tar.gz
10、安装gcc 执行 yum install gcc
11、安装redis 执行 cd redis-4.0.1 执行 make MALLOC=libc 执行 cd src && make install
前台启动redis 按以上步骤,安装完成之后,redis在 /usr/local/bin/下面,进到该目录下执行 redis-server 即可启动redis;
12、配置redis后台启动:先将redis解压之后的安装包src目录下的redis.conf复制一份到启动目录,方便后面启动和配置redis。然后编辑该 redis.conf ,将daemonize no修改为daemonize yes 保存。
后台启动的方式:读取配置文件的方式启动,进入/usr/local/bin/目录,执行:./redis-server /usr/local/bin/redis.conf
设置读写密码 :执行 vim redis.conf 在requirepass这行去掉注释,改成requirepass 你的密码
13、关闭reids步骤进程:后台运行时需要查看redis进程pid执行 ps -aux | grep redis 杀死进程 执行 kill -9 PID号
https://www.cnblogs.com/-saligia-/p/9749559.html
14、关闭redis客户端 ./redis-cli shutdown
15、配置远程访问redis:1) 修改配置文件授权远程访问主机:执行 vim redis.conf 将bind 127.0.0.1 这行注释掉,protected-mode设置为no 保存。向防火墙添加 Redis 端口: firewall-cmd --zone=public --add-port=6397/tcp --permanent
2) 刷新防火墙规则: firewall-cmd --reload
3) 查看防火墙已开启的端口: firewall-cmd --zone=public --list-port ,如果依旧连接不上,测试环境可以直接关闭防火墙 systemctl stop firewalld.service ,开机禁止防火墙启动 systemctl disable firewalld.service
4)远程访问redis: springboot或者ssm配置好redis的用户名密码等参数之后,即可实现远程连接redis。有一个需要注意的坑,redis的密码,不能以0开头,不然远程连接报错。
5)切换redis数据库:登录cli,执行 select 数据库编号,比如select 10 ,查看全部key,执行 keys *
=================================================================
服务器安全防护:
1、个人用户可以使用服务器安全狗linux免费版,自行做配置。参考:https://www.cnblogs.com/iathanasy/p/8488407.html
=================================================================
项目运行相关
1、jar程序停止:先查看所以跟java相关的程序,执行 ps -ef |grep java ,再kill掉相应进程,再启动即可。
2、让jar包在后台运行,并输出日志到文件 :在demo.jar同级目录,可以自定义外挂application.properties,用于增加配置。
新建sh脚本 vim deploy.sh
增加一行启动配置 nohup java -Xms400m -Xmx400m -XX:NewSize=200m -XX:MaxNewSize=200m -jar demo.jar --spring.config.addition-location=upload/application.properties 指定堆内存大小,新生代大小,加载外挂配置文件路径。保存退出
然后执行后台启动命令 ./deploy.sh & 注意:后面这个&一定要记得加,不然无法实现后台启动!控制台日志将自动打印到新生成的文件nohup.out文件中。回车vim查看启动日志。
==================================================================
nginx安装配置
1、去官网下载openresty-1.13.6.2.tar.gz,然后centos /usr/下新建文件夹server ;将压缩包发送到server目录下,解压缩
2、安装环境相关组件:yum install pcre-devel openssl-devel gcc curl
3、进入openresty-1.13.6.2文件目录,执行 ./configure ,完成之后执行 make 完成之后执行make install 完成之后即已安装完 成。安装路径在/usr/local/openresty/nginx/
4、配置nginx为web服务器,
5、启动nginx,进到/usr/local/openresty/nginx/目录下,执行 sbin/nginx -c conf/nginx.conf 默认80端口后台启动(端口按上面方法开启即可),查看启动是否成功 netstat -an |grep 80
6、上传前端资源文件到/usr/local/openresty/nginx/html/目录里。
7、修改配置后无缝重启nginx,执行 sbin/nginx -s reload
8、关闭nginx :执行 ps -ef | grep nginx 然后kill掉主进程 kill -9 PID
80端口占用,无法启动时 执行 killall -9 nginx
9、动静分离:使用nginx.conf的不同location结点来实现
10、nginx配置反向代理:定义upstream 服务器群组结点 在location结点将非静态访问pass到后端服务器集群。
11、nginx与jarserver建立长连接,有利于降低CPU的消耗、减少平均访问耗时。在pass的location结点中增加几行配置
1) upstream结点设置长连接数,比如使用30个长连接 keepalive 30;
2)location结点 开启http1.1协议支持 去除注释proxy_http_version 1.1;
3)去除注释 开启 proxy_set_header Connection "";
12、nginx中使用openresty读取redis,绕过tomcat,使用lua脚本实现:
local args = ngx.req.get_uri_args()
local id = args["id"]
local redis = require "resty/redis"
local cache = redis:new()
local ok,err = cache:connect("192.168.10.177","6379")
if not ok then
return
end
local res, err = cache:auth("******")
if not res then
return
end
local item_model = cache:get("item_"..id)
if item_model == ngx.null or item_model == nil then
local resp = ngx.location.capture("/demo/getitem?id="..id)
item_model = resp.body
end
ngx.say(item_model)
========================================================
jarserver本地热点数据缓存:
1、使用谷歌guava依赖本地缓存机制,增加本地cache存取service;类似于redis,优先级可以高于redis;
优先读取cache,然后redis,然后数据库。
=========================================================
网络爬虫实现页面全静态化
1、phantomjs+js逻辑,实现页面全静态化,推送至cdn,优化访问速度。