Other

数据库系统概念示例

Windows PowerShell 版权所有(C) Microsoft Corporation。保留所有权利。 安装最新的 PowerShell,了解新功能和改进!https://aka.ms/PSWindows PS C:\Users\iyang> mysql -u root -p Enter password: ************ Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 8 Server version: 8.0.27 MySQL Community Server - GPL Copyright (c) 2000, 2021, Oracle and/or its affiliates. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help.

CentOS 8 升级Python3.6到Python3.9

Centos OS 8默认的Python版本为3.6,不符合练习的需求。现在升级到3.9。 # 下载Python3.9.9 wget https://www.python.org/ftp/python/3.9.9/Python-3.9.9.tgz tar zxvf Python-3.9.9.tgz # 安装必须的包 dnf -y install gcc zlib* libffi-devel cd Python-3.9.9/ ./configure --prefix=/usr/local/python3 --enable-optimizations make make install # 删除原先的Python3和pip3 rm -rf /usr/bin/python3 ln -s /usr/local/python3/bin/python3 /usr/bin/python3 rm -rf /usr/bin/pip3 ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3 查看Python3和Pip3是否正确的被安装: python3 --version pip3 --version

windows批处理之条件控制与循环

FOR FOR %%variable IN (set) DO command [command-parameters]  %variable 指定一个单一字母可替换的参数。 (set) 指定一个或一组文件。可以使用通配符。 command 指定对每个文件执行的命令。 command-parameters 为特定命令指定参数或命令行开关。 在批处理程序中使用 FOR 命令时, 指定变量请使用 %%variable而不要用 %variable。 变量名称是区分大小写的,所以 %i 不同于 %I 循环体内有多条语句时,可以在DO后面用小括号包含,但是 do ( 必须在一行 1. 基本用法 1.1 输出数组 for %%i in (0,1,10) do ( echo %%i ) 依次输出数组 0,1,10(这里用空格隔开与,隔开效果一样) set list=1,2,3,4,5 for %%i in (%list%) do ( echo %%i ) 定义数组并输出数组中字符(逗号分割也可以用空格) for %%i in (0,1,10) do ( echo %%i ) 若是用引号包含,就会直接输出该字符串,且字符串带引号(若是 echo %%~i 就不会带引号) for %%i in (C:\*.

MySQL安装教程

MySQL 安装教程 下载MySQL的压缩包(两种方式) 官网链接 我的分享 解释一下为什么下载5.7版本 因为大部分企业在用的还是5.7而非8.0 再说一下为什么选择压缩包安装而不是 .exe 或者 .msi 因为通过这两种方式极难卸载干净,具体表现在你下次安装MySQL的时候(会有服务冲突) 压缩包解压(最好解压到指定目录,不要包含中文的目录) 配置环境变量(将mysql目录下 bin文件夹的路径添加到环境变量中) win11用户可以通过(控制面板-->系统-->高级设置-->环境变量找到) 最好是给全部用户配置 新建配置文件 my.ini文件 [mysqld] basedir=D:\Program Files\mysql-5.7\ datadir=D:\Program Files\mysql-5.7\data\ #data文件是在配置过程中生成的只要保证mysql安装目录正确即可 port=3306 skip-grant-tables 以 管理员 身份打开命令提示符,并将目录切换至 mysql 的 bin 目录下,然后输入 怎么以管理员身份打开呢(win + x呼出一个神秘的菜单栏) mysqld -install 安装成功会有反馈 再输入下面的内容进行数据库初始化 mysqld --initialize-insecure --user=mysql 初始化就是为了生成Data目录 启动数据库

linux tmux 详细教程,Linux中Tmux的安装和基本用法

本文转载于 https://blog.csdn.net/weixin_39907658/article/details/116688434 http://c.biancheng.net/linux/tmux.html 以下是一些用于管理Tmux窗口和窗格的最常用命令: Ctrl+b c 创建一个新窗口(带外壳) Ctrl+b w 从列表中选择窗口 Ctrl+b 0 切换到窗口0(按数字) Ctrl+b , 重命名当前窗口 Ctrl+b % 将当前窗格水平拆分为两个窗格 Ctrl+b 将当前窗格垂直拆分为两个窗格 Ctrl+b o 转到下一个窗格 Ctrl+b ; 在当前窗格和上一个窗格之间切换 Ctrl+b x 关闭当前窗格 Ctrl+B C 好了,我们试着再创建一个窗口: 第一步:按 Ctrl+B 组合键,然后松开。 第二步:再单独按一下 c 键。 看!最底部是不是出现了一个 1:bash 细心的同学可能会提出一个问题,为什么刚才星号(*)是在 0:bash 后面,而现在却到了 1:bash 后面呢? 这是个好问题,星号(*)在这里表示的是“当前处于活跃状态的窗口”,也就是哪个窗口现在处于可操作状态,星号(*)就在哪个窗口的后面。这回知道了吧。 3.在窗口间切换 既然,我们在 roclinux 这个 session 中已经有了两个窗口,那么如果想在两个窗口间进行切换,应该怎么操作呢? 很简单,假如我们要切换到 0:bash 这个窗口,步骤如下: 第一步:按 Ctrl-B 组合键,然后松开。 第二步:按数字 0 键。 看,我们刚才说的星号(*)是不是已经悄悄移动到 0:bash 的后面啦。同理,在按下 Ctrl+B 组合键后,按相应数字键,就可以切换到相应的窗口了。就是这么简单! 自定义Tmux 启动Tmux时,它将从~/.tmux.conf是否存在文件读取其配置参数。 这是~/.

Linux获取指定的DHCP地址

需求 希望嵌入式设备获取指定的ip地址。 H3C路由器无法自定义MAC与IP地址绑定,只能绑定DHCP分配地址。 故需要设备主动申请 方法 进入路由器后台释放掉目前的DHCP分配,确保sudo段时间之内不需要密码。 sudo vi /etc/dhcp/dhclient.conf # add below line # send dhcp-requested-address 10.0.1.10; sudo dhclient -r; sudo dhclient eth0 确保输入正确因为ssh连接会断开并无法重连,获取新地址后进入路由器绑定即可。 参考 networking - How to request a specific IP address from DHCP server? - Super User

Centos8重启网络服务

注:本文基于CentOS 8.3编写 CentOS 7中支持network.service和NetworkManager.service 2种方式配置网络,而在CentOS 8中已经废弃network.service,需要通过NetworkManager.service配置网络。因此通过systemctl restart network已经无法使用了。 [root@localhost ~]# cat /etc/redhat-release CentOS Linux release 8.3.2011 [root@localhost ~]# systemctl restart network Failed to restart network.service: Unit network.service not found. 方法一: 使用nmcli命令,需要两条指令,先加载配置,然后应用 [root@localhost ~]# nmcli c reload [root@localhost ~]# nmcli c up ens33 Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/9) 方法二: 使用ifdown和ifup [root@localhost ~]# ifdown ens33;ifup ens33 Connection 'ens33' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/9) Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/10)

计算机网络:进程/线程

进程和线程的区别 1.进程是资源分配的最小单位,线程是CPU调用的最小单位 2.一个线程只能属于一个进程,一个进程可以有多个线程,但至少有一个线程,线程依赖于进程而存在 3.进程在执行过程中拥有独立的地址空间,而多个线程共享进程的内存空间 4.进程间不会相互影响,一个进程中某个线程挂掉会导致整个进程挂掉 5.进程编程调试简单,但创建开销大;线程编程调试复杂,但创建开销小,切换速度快。 进程同步的方法 1.锁(互斥锁、读写锁、记录锁) 2.条件变量 3.信号量 4.屏障 进程间的通信方式 1.管道 2.IPC(InterProcess Communication) 3.socket

处理机管理——进程的概念

程序:就是一个指令序列 早期的计算机(只支持单道程序)程序的代码放在程序段内,程序运行过程处理的数据放在数据段内(如变量) 为了方便操作系统管理,完成各程序并发执行,引入了进程、 进程实体的概念。一般情况下,我们把进程实体就简称为进程,例如,所谓创建进程,实质上是创建进程实体中的PCB;而撤销进程,实质上是撤销进程实体中的PCB注意:PCB是进程存在的唯一标志! 进程实体(进程映像):PCB、程序段、数据 进程控制块(PCB):系统为每个运行的程序配置一个数据结构,用来描述进程的各种信息(如程序代码存放位置) 进程不同的定义: 1.进程是程序的一次执行过程。 2.进程是一个程序及其数据在处理机上顺序执行时所发生的活动。 3.进程是具有独立功能的程序在数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位(强调动态性) 引入进程实体的概念后的定义: 进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。注:严格来说,进程实体和进程并不一样,进程实体是静态的,进程则是动态的。也可以认为进程实体就是进程。因此我们也可以说“进程由程序段、数据段、PCB三部 分组成” 操作系统通过PCB来管理进程,因此PCB中应该包含操作系统对其进行管理所需的各种信息。 程序段:存放程序代码 数据段:程序运行时使用、产生的运算数据。如全局变量、局部变量、宏定义的常量 进程标识符PID:当进程被创建时,操作系统会为该进程分配一个唯一的、不重复ID,用于区分不同的进程(类似于身份证号) 各寄存器值:当进程切换时需要把进程当前 的运行情况记录下来保存在PCB中,如程序计数器的值表示了当前程序执行到哪一句 操作系统管理进程所需的数据都在PCB中 程序段和数据段存放程序运行所需的数据 进程间的组织:在一个系统中,通常有数十、数百乃至数千个PCB。为了能对他们加以有效的管理,应该用适当的方式把这些PCB组织起来。 注:进程的组成讨论的是一个进程内部由哪些部分构成的问题,而进程的组织讨论的是多个进程之间的组织方式问题 链接方式:按照进程状态将PCB分为多个队列;操作系统持有指向各个队列的指针 索引方式:根据进程状态的不同,建立几张索引表;操作系统持有指向各个索引表的指针 进程的特征: 动态性(最基本):进程是程序的执行过程,是动态产生,变化和消亡的 并发性:内存中有多个进程实体,进程间可以并发执行 独立性:进程是能独立运行,独立获取资源,独立接受调度的基本单位(进程是资源分配,接收调度的基本单位) 异步性:各进程按各自独立的不可预知的速度向前推进,操作系统要提供“进程同步机制”解决异步问题。异步性会导致并发程序执行结果的不确定性。 结构性:每个进程都会配一个PCB。结构上看,进程由程序段、数据段、PCB组成

CentOS 下 MySQL 服务搭建

1. 卸载旧 MySQL 查看 rpm 包 rpm-qa | grep mysql 如果存在,使用如下命令卸载 rpm -e 查找是否存在mysql 相关目录 find / -name mysql 卸载系统自带 mariadb [root@localhost ~]# rpm -qa|grep mariadbmariadb-libs-5.5.68-1.el7.x86_64mariadb-libs-5.5.64-1.el7.x86_64[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64 mariadb-libs-5.5.64-1.el7.x86_64[root@localhost ~]# rm -rf /etc/my.cnf 2. 创建 mysql 用户和组 检查有无创建过 mysql 用户组,如果没有创建 # 检查mysql 用户组是否存在[root@localhost ~]# cat /etc/group | grep mysql[root@localhost ~]# cat /etc/passwd | grep mysql# 创建mysql 用户组和用户[root@localhost ~]# groupadd mysql[root@localhost ~]# useradd -r -g mysql mysql 3.