SAST2023笔记——数据库相关
mysql许多代码都需要在进程外存储一些数据(比如电子系的程设作业成绩管理系统…),对于小白程序员来说最简单的方法就是把数据存入文件中,有需要的时候读取文件。但显然对文件的读写操作效率太过低下,我们需要一个兼具效率、便捷性、易用性的工具,于是数据库便闪亮登场了。关系型数据库另一个特殊的作用就是可以利用外键建立表之间的关系,让我们稍后解释。
安装首先,请运行
123sudo apt updatesudo apt upgradesudo apt install mysql-server
来安装mysql。届时可用service mysql start来启动mysql。
创建新用户我们先运行mysql -u root -p来登录 mysql 的 root 用户,之后你应该会发现终端形如:mysql> 。我们运行CREATE USER 'admin'@'%' IDENTIFIED BY '123456';来创造一个名为 admin 、密码为 123456 的用户。(请注意, mysql 需要我们打出 ‘ ; ‘ 来运行命令!)然后我们在 r ...
SAST2023笔记——Docker相关
我对docker是从零入手,就让我从头讲一讲docker大概是个什么东西吧…
Why几乎所有码农都有过配环境的痛苦经历…这个包下不了那个包不兼容,可能还会因为操作系统的差别有非常难解决的bug…天下苦配环境久矣,那么有没有什么解决的办法呢?最无脑(先不考虑是否可行)的办法自然是建个虚拟机,把操作系统、运行环境的所有东西全打包给用户。然而显然正常电脑都不会喜欢大几十个GB的虚拟机,于是我们尝试只虚拟软件环境,docker这个轻量级的虚拟化技术也就孕育而生:它试图将应用放在容器container上运行。一般来说容器是MB级别的,对运行很友好。
WhatDocker有两个重要的概念:容器container和镜像image。镜像是静态定义的,而容器是动态存在的;说人话就是镜像和容器的关系类似于类和实例的关系,我们可以利用镜像创造容器。我们需要先构建一个镜像,再以此构建容器并运行。
docker hub中有很多我们现成可用的镜像,比如scratch(空镜像),python,gcc等。docker hub可以集中存储并分发镜像,我们称这种服务为注册服务。值得一提的是,每个镜像都形如<镜像名& ...
SAST2023笔记——Linux&&Git相关
Linux
在Linux的根目录下有很多文件(并且他们可能需要我们手动修改!)例如etc文件夹:正如其名,这个目录的意思就是一些杂七杂八的配置文件。例如其中的etc/passwd是用户数据库,其中的域给出了用户名、真实姓名、家目录、加密的口令和用户的其他信息【例如train:x:1000:1000::/home/train:/usr/bin/zsh这一行就代表了用户”train”的存在】。
如果使用的命令行shell是bash,那么修改代理的时候要用到nano ~./bashrc;如果使用的命令行shell是zsh,那么修改代理的时候要用到nano ~./zshrc,然后在这个文件的最后引入配置的http或者https端口。个人认为nano比vim要更好用一些(没有乱七八糟的神奇操作要求)。
命名中以”.”开头的Linux文件(比如”.hidden”)无法用ls命令看到,但是可以用ls -a强制看到这些隐藏文件。
linux还有很多神奇的命令…例如:(你说得对,但我选择直接问chatgpt)
...
利用github部署博客/文档
今天来浅谈一下我对github.io和CICD的一些理解(不会有人上完软工还不会CICD吧.jpg)。虽然我早已用到了这些东西,但原理一直都没有试图弄懂过。似乎github.io就是git page,它“可以展示你的项目及项目网站的托管工具,可以理解为免费的阿里云等服务器”。
关于github pages推荐大家直接去看官方文档:https://docs.github.com/zh/pages/getting-started-with-github-pages/about-github-pages (那我还在这说个屁)。
这里摘要一些我能理解的部分:github pages的站点分为用户站点/项目站点/组织站点。
用户站点/组织站点每个用户只能有一个,这也是为什么大家都把用户站点当作博客的原因。用户站点的创造方式非常固定:仓库名必须为<username>.github.io(比如我的就是ShuoAndy.github.io)。除非使用的是自定义域(就像我之前买了个九块钱的域名一样),否则用户站点的url都是http(s)://<usern ...