脚本清空Redis所有内容
redis服务经常因服务器内存不够用而自动死掉,需要经常连接进去做数据清理。 所以写了个脚本每天自动清理一遍。 脚本内容如下: echo "flushall" | redis-cli -p 7000 -a 'password' echo "flushall" | redis-cli -p 7001 -a 'password' echo "flushall" | redis-cli -p 7002 -a 'password'
非root用户使用1024以下端口
以nginx为例。 1. 设置权限: 比如我的nginx安装在/home/java/nginx目录, cd /home/java/nginx/sbin setcap cap_net_bind_service=+eip nginx 看到nginx文件变成红色,说明设置成功。 2. 清除附加权限: setcap -r [nginx启动命令路径] 3. 查看附加权限: getcap [nginx启动命令路径]
解决cannot import name 'request_ctx'...
错误提示如下: [root@localhost Flask-Admin-Dashboard]# /opt/python/bin/python3 app.py Traceback (most recent call last): File "/opt/Flask-Admin-Dashboard/app.py", line 5, in from flask_security import Security, SQLAlchemyUserDatastore, \ File "/opt/python/lib/python3.11/site-packages/flask_security/__init__.py", line 13, in from .core import Security, RoleMixin, UserMixin, AnonymousUser, current_user File "/opt/python/lib/python3.11/site-packages/flask_security/core.py", line 18, in from flask_babelex import Domain File "/opt/python/lib/python3.11/site-packages/flask_babelex/__init__.py", line 20, in from flask import request_ctx ImportError: cannot import name 'request_ctx' from 'flask' (/opt/python/lib/python3.11/site-packages/flask/__init__.py) 错误的原因是因为Flask版本太高了。 问题解决: #卸载原有Flask pip3 uninstall Flask #安装旧版本Flask pip3 install Flask=2.2.5 问题解决。
Nginx: proxy_set_header与add_header区别
proxy_set_header 1 )概述 proxy_set_header 和 add_header 是 Nginx 配置中两个不同的指令, 它们各自有不同的用途。 proxy_set_header 指令用于修改转发到代理服务器(通常是后端应用服务器)的 HTTP 请求头。 它允许您设置或覆盖请求头中的字段,以便后端服务器能够接收正确的信息或根据这些信息做出响应。 例如,有时可能会使用 proxy_set_header 来设置 Host 头,这样后端服务器就知道它正在为哪个域名提供服务。 有时候,还可以设置 X-Real-IP 和 X-Forwarded-For 头来传递客户端的真实 IP 地址和请求链中的代理信息。 2 ) 示例 location / { proxy_pass http://backend_servers; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } add_header 1 ) 概述 add_header 指令用于向 Nginx 发出的 HTTP 响应中添加或覆盖响应头字段。 这通常用于添加自定义的头部信息,如跨域资源共享(CORS)的头部,或者为响应添加安全相关的头部(如 X-Content-Type-Options)。 2 ) 示例 location / { # ... 其他配置 ... add_header X-Content-Type-Options nosniff; add_header X-Frame-Options DENY; add_header X-XSS-Protection "1; mode=block"; } 两者区别: 方向:proxy_set_header...
oracle处理阻塞与死锁
1. 死锁处理 1.1. 建立触发器 登录oracle的dba权限用户,然后执行以下SQL: create or replace trigger login_on_record_ip after logon on database begin dbms_application_info.set_client_info(sys_context('userenv', 'ip_address')); end; 1.2. 查询锁死 select username,lockwait,status,machine,program,logon_time,CLIENT_INFO from v$session where sid in (select session_id from v$locked_object); Username:死锁语句所用的数据库用户 Lockwait:死锁的状态 Status: 状态,active表示被死锁 Machine: 死锁语句所在的机器 Program: 产生死锁的语句主要来自哪个应用程序 logon_time:登录时间 CLIENT_INFO:客户端登录IP 1.3. 查看死锁的语句 select sql_text from v$sql where hash_value in (select sql_hash_value from v$session where sid in (select session_id from v$locked_object)); 1.4. 查找死锁的进程 SELECT s.username,l.OBJECT_ID,l.SESSION_ID,s.SERIAL#, l.ORACLE_USERNAME,l.OS_USER_NAME,l.PROCESS FROM V$LOCKED_OBJECT l,V$SESSION S WHERE l.SESSION_ID=S.SID; 1.5. 杀死死锁的进程 alter system kill session...
解决pip3安装mysqlclient报错
报错现象: /usr/bin/ld: cannot find -lmysqlclient collect2: error: ld returned 1 exit status error: command '/usr/bin/gcc' failed with exit code 1 在开发和编译 MySQL 客户端程序时,有时候需要手动指定 MYSQLCLIENT_CFLAGS 和 MYSQLCLIENT_LDFLAGS 环境变量。这两个环境变量用于指定编译和链接 MySQL 客户端程序时使用的头文件和库文件路径。 export MYSQLCLIENT_CFLAGS="-I/usr/include/mysql" export MYSQLCLIENT_LDFLAGS="-L/usr/lib64/mysql -lmysqlclient" 如果mysql是yum安装的直接使用上面命令即可,如果是编译安装的,需要指向编译安装的目录。 然后重新安装mysqlclient即可。