From 0a2e0099f410d9a1c87d0715cf4f027e08babf61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=9D=B0?= <3107458459@qq.com> Date: Tue, 9 Jul 2024 08:27:26 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...72\346\234\254\344\275\277\347\224\250.md" | 16 +++++ ...703-\345\256\211\350\243\205posrgresql.md" | 19 ++++++ "\345\210\230\346\235\260/20240607.md" | 15 ++++ ...57\345\242\203\345\217\230\351\207\217.md" | 24 +++++++ ...33\347\250\213\347\256\241\347\220\206.md" | 15 ++++ "\345\210\230\346\235\260/20240619.md" | 68 +++++++++++++++++++ ...50\345\210\206\351\224\231\350\257\257.md" | 41 +++++++++++ ...72\345\255\227\347\254\246\344\270\262.md" | 46 +++++++++++++ 8 files changed, 244 insertions(+) create mode 100644 "\345\210\230\346\235\260/2024.0702-mysql\347\232\204\345\237\272\346\234\254\344\275\277\347\224\250.md" create mode 100644 "\345\210\230\346\235\260/2024.0703-\345\256\211\350\243\205posrgresql.md" create mode 100644 "\345\210\230\346\235\260/20240607.md" create mode 100644 "\345\210\230\346\235\260/20240613-\347\216\257\345\242\203\345\217\230\351\207\217.md" create mode 100644 "\345\210\230\346\235\260/20240614-\350\277\233\347\250\213\347\256\241\347\220\206.md" create mode 100644 "\345\210\230\346\235\260/20240619.md" create mode 100644 "\345\210\230\346\235\260/20240701\345\256\211\350\243\205\346\225\260\346\215\256\345\272\223\345\217\212\344\270\200\351\203\250\345\210\206\351\224\231\350\257\257.md" create mode 100644 "\345\210\230\346\235\260/20240704-postgresql\351\232\217\346\234\272\345\255\227\347\254\246\344\270\262.md" diff --git "a/\345\210\230\346\235\260/2024.0702-mysql\347\232\204\345\237\272\346\234\254\344\275\277\347\224\250.md" "b/\345\210\230\346\235\260/2024.0702-mysql\347\232\204\345\237\272\346\234\254\344\275\277\347\224\250.md" new file mode 100644 index 0000000..14109e8 --- /dev/null +++ "b/\345\210\230\346\235\260/2024.0702-mysql\347\232\204\345\237\272\346\234\254\344\275\277\347\224\250.md" @@ -0,0 +1,16 @@ +### 增 +- create database 数据库名; 创建数据库 +- create table 表名(...);创建数据表 +- insert into 表名(...)values(...);插入数据在指定的表中 +### 删 +- drop database 数据库名;直接删除数据库 +- drop table 表名;直接删除数据表 +- delect fomr 表名 where id =2 ;删除指定表中的一条id=2的命令 +### 改 +update 表名 set id = 2 where id = 3; +### 查 +select * from 表名;查询指定表的所有内容 +### show和use +- show database;列出所有可用的数据库 +- use database;选择要使用的数据库 + diff --git "a/\345\210\230\346\235\260/2024.0703-\345\256\211\350\243\205posrgresql.md" "b/\345\210\230\346\235\260/2024.0703-\345\256\211\350\243\205posrgresql.md" new file mode 100644 index 0000000..1b525d4 --- /dev/null +++ "b/\345\210\230\346\235\260/2024.0703-\345\256\211\350\243\205posrgresql.md" @@ -0,0 +1,19 @@ +### postgresql + 是一个强大的,开源的对象关系数据库系统。任何未受限制的用户都可以安装,而不需要超级用户权限 +### 安装步骤 +1. 去postgresql官网选择下载对应系统的软件包(选择linux,debian) +2. 输入两行代码: +- apt install -y postgresql-common +- /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh +3. su - postgres:从 root 用户切换为 postgres 用户命令 +4. 进入postgresql:psql +### 基本使用 +- create database 数据库名; 创建数据库 +- create table 表名(...);创建数据表 +- insert into 表名(...)values(...);插入数据在指定的表中 +- drop database 数据库名;直接删除数据库 +- drop table 表名;直接删除数据表 +- delect fomr 表名 where id =2 ;删除指定表中的一条id=2的命令 +- select * from 表名;查询指定表的所有内容 +- 退出postgresql:\q + diff --git "a/\345\210\230\346\235\260/20240607.md" "b/\345\210\230\346\235\260/20240607.md" new file mode 100644 index 0000000..fc4ea50 --- /dev/null +++ "b/\345\210\230\346\235\260/20240607.md" @@ -0,0 +1,15 @@ +chattr命令 +添加隐藏权限 +-i 对于文件和目录来说 不能进行删除修改移动新建 + +-a 对于目录来说,能在里面创建新的内容但是不能对其进行任何操作 + 对于文件来说也不能进行任何操作,但可以通过echo命令对其插入东西 + +umask命令 +-p 查看当前登录账号默认权限 +-S 可以查看账号默认权限 +使用与计算来设置默认权限,与计算相当于反着来 +umask 0000 想要设置的账号 + +特殊权限 +suid \ No newline at end of file diff --git "a/\345\210\230\346\235\260/20240613-\347\216\257\345\242\203\345\217\230\351\207\217.md" "b/\345\210\230\346\235\260/20240613-\347\216\257\345\242\203\345\217\230\351\207\217.md" new file mode 100644 index 0000000..57edc47 --- /dev/null +++ "b/\345\210\230\346\235\260/20240613-\347\216\257\345\242\203\345\217\230\351\207\217.md" @@ -0,0 +1,24 @@ +# 环境变量 +### 概念 +在操作系统中用来指定操作系统运行环境的一些参数 +### 分类 +1.永久的:在环境变量脚本文件中配置,用户每次登陆会自动执行 +2.临时的:用户利用export命令,在当前终端下生成环境变量,关闭shell终端失效 +3.公共的:系统环境变量,对所有用户都生效 +4.用户私有的:用户环境变量,用户私有,自定义 +### 常用环境变量 +1. PATH:决定了系统在哪些目录中查找可执行文件 +2. HOME:指定当前用户的主目录路径 +3. USER:当前用户的用户名 +4. SHELL:指定当前用户默认的shell +5. LANG:指定系统默认语言 +6. LD_LIBRARY_PATH:指定系统在哪些目录中查找共享库文件 +7. TERM:指定当前终端类型 +8. PS1:定义命令行提示符的格式 +9. PS2: 定义多行命令的提示符格式 +### 查看环境变量 +```js +printenv / env //查看当前用户的环境变量 + +echo $PATH / echo $HOME /echo $USER +``` \ No newline at end of file diff --git "a/\345\210\230\346\235\260/20240614-\350\277\233\347\250\213\347\256\241\347\220\206.md" "b/\345\210\230\346\235\260/20240614-\350\277\233\347\250\213\347\256\241\347\220\206.md" new file mode 100644 index 0000000..e187e72 --- /dev/null +++ "b/\345\210\230\346\235\260/20240614-\350\277\233\347\250\213\347\256\241\347\220\206.md" @@ -0,0 +1,15 @@ +### 进程管理 ++ top命令:实时显示系统中的进程和系统性能信息。 + ++ kill命令:用于终止指定进程。 + ++ killall命令:终止指定名称的所有进程。 + ++ pgrep命令:根据进程名查找匹配的进程ID。 + ++ ps命令:是Linux 中最基础的浏览系统中的进程的命令。能列出系统中运行的进程,包括进程号、命令、CPU使用量、内存使用量等。 + ++ pstree命令:每一个进程都是由其父进程创建的。此命令以可视化方式显示进程,通过显示进程的树状图来展示进程间关系。 + ++ htop命令:htop与top很类似,但是htop是交互式的文本模式的进程查看器。它通过文字图形化地显示每一个进程的CPU和内存使用量、swap使用量。 + diff --git "a/\345\210\230\346\235\260/20240619.md" "b/\345\210\230\346\235\260/20240619.md" new file mode 100644 index 0000000..6e44df6 --- /dev/null +++ "b/\345\210\230\346\235\260/20240619.md" @@ -0,0 +1,68 @@ +创建用户 +adduser 引导式创建 +useradd 需要自己去设置没有提示,比起adduser更有可玩性 +-s 可以将用户的登录Shell进行设置比如/sbin/nologin + +设置用户有效期限 +usermod 用户名 -e 到期时间 +chage -l 用户名 可以查看是否设置成功 + +删除用户 +deluser +userdel +--remove-all-files才能删除干净,不带上-r的话会只删除账号家目录还会存在 + +创建用户组 +groupadd 用户组名称 +-g可以选择标识号 + +gpasswd命令 +可以将用户加入到组,也可以将用户组内的用户删除 +-M可以将多个用户加入到组 +-d用来将用户组内的用户删除 + +删除用户组 +groupdel 用户组名称 + +newgrp切换用户组 + +禁止ssh登录 +nologin + +rwx权限 +r是只读 +w是写 +x是执行权限 +l是符号链接文件 + +ln +可以为一个文件或者目录在另一个位置建立一个同步的链接 +ln【参数】【源文件或目录】【目标文件或目录】 + +-s +软连接 以路径的形式存在类似快捷方式,可以跨越文件系统但硬链接不行,可以对目录进行链接 +-n 把符号链接视为一般目录 + +硬链接 以文件副本的形式存在,但不占用实际空间,不允许给目录链接,只能在一个文件系统 + +chmod命令 +设置某个对象的权限 +chmod 选择要设置的权限 对象名称 ++ 为指定的用户类型增加权限 +- 去除指定用户类型的权限 += 设置指定用户权限的设置,即将用户类型的所有权限重新设置 +7 读 + 写 + 执行 rwx 111 +6 读 + 写 rw- 110 +5 读 + 执行 r-x 101 +4 只读 r-- 100 +3 写 + 执行 -wx 011 +2 只写 -w- 010 +1 只执行 --x 001 +0 无 --- 000 + + + + + +证书的官方下载 +curl https://get.acme.sh | sh \ No newline at end of file diff --git "a/\345\210\230\346\235\260/20240701\345\256\211\350\243\205\346\225\260\346\215\256\345\272\223\345\217\212\344\270\200\351\203\250\345\210\206\351\224\231\350\257\257.md" "b/\345\210\230\346\235\260/20240701\345\256\211\350\243\205\346\225\260\346\215\256\345\272\223\345\217\212\344\270\200\351\203\250\345\210\206\351\224\231\350\257\257.md" new file mode 100644 index 0000000..e498526 --- /dev/null +++ "b/\345\210\230\346\235\260/20240701\345\256\211\350\243\205\346\225\260\346\215\256\345\272\223\345\217\212\344\270\200\351\203\250\345\210\206\351\224\231\350\257\257.md" @@ -0,0 +1,41 @@ +linux本机下载 +-wget http://mysql... +非linux本机下载 +-下载后通过scp上传 +安装mysql +dpkg -i 软件名 安装软件包 +apt update 更新数据源 +apt install mysql-server +systemctl start mysql 启用服务 +安装完成后使用命令可以本地链接到数据库 +mysql -u root -p + +忘记mysql密码可以通过 vim /etc/mysql/mysql.conf.d/mysqld.cnf配置文件 +在【mysqld】最后一段添加 skip-grant-tables 再重新加载服务(systemctl restart mysql)就可以免密码登录mysql +use mysql; 切换到mysql数据库 +flushprivileges; 赋予权限 +alter user 'root'@'localhost' identified by '修改的密码'; + +删除数据库 +1.查询 +rpm -aq | grep -i mysql +2.卸载 +rpm -e xxxx 将查询出来的全部卸载 +若采用yum安装的,需要执行该语句 +rem -e --nodeps xxxxx +3.直到查询不出任何内容 + +删除mysql痕迹 +1.sudo yum remove mysql +2.rm -f etc/my.cnf +3.rm -rf mysql +删除初始密码文件/var/log/mysqld.log + +数据库命令 +查看插件 +show PLUGINS; + + +安装 +MySQL基础命令 +设置远程连接 diff --git "a/\345\210\230\346\235\260/20240704-postgresql\351\232\217\346\234\272\345\255\227\347\254\246\344\270\262.md" "b/\345\210\230\346\235\260/20240704-postgresql\351\232\217\346\234\272\345\255\227\347\254\246\344\270\262.md" new file mode 100644 index 0000000..fbeb2e4 --- /dev/null +++ "b/\345\210\230\346\235\260/20240704-postgresql\351\232\217\346\234\272\345\255\227\347\254\246\344\270\262.md" @@ -0,0 +1,46 @@ +写一个自义函数,要求传入一个1到30到正整数,返回指定参数个的随机字符 + +``` +create or replace function ww(num INT) +returns text as +$$ +declare + result text := ''; + random_char char; +begin + IF num < 1 or num > 30 then + raise exception '输入的参数必须在 1 到 30 之间'; + end if; + + for i in 1..num loop + random_char := chr(floor(random() * 26 + 97)::integer); -- 增加类型转换为整数 + result := result || random_char; + end loop; + + return result; +end; +$$ language plpgsql; +select www(5); +``` + +自定义函数,要求随机返回1到30位的英文字符,最少返回一个,最多长度30 + +``` +create or replace function eee() +returns text as +$$ +declare + num int := floor(random() * 30 + 1); + result text := ''; + random_char char; +begin + for i in 1..num loop + random_char := chr(floor(random() * 26 + 97)::integer); -- 增加类型转换为整数 + result := result || random_char; + end loop; + return result; +end; +$$ language plpgsql; +select eee(); -- 调用函数获取随机长度的英文字符串 +``` + -- Gitee