数据库应用:数据库管理系统与安装MySQL数据库

news2024/11/16 5:57:01

目录

一、理论

1.数据库管理系统

2.关系型数据库

3.数据库

4.MySQL数据库

5.MySQL部署

二、实验

1.yum安装MySQL

2.配置MySQL数据库的Tab补全 

三、问题

1.数据库登录报错

2.数据库密码复杂度报错

四、总结


 

 

一、理论

1.数据库管理系统

(1)概念

数据库管理系统(Database Management System,DBMS)是实现对数据库资源有效组织、 管理和存取的系统软件。它在操作系统的支持下,支持用户对数据库的各项操作。DBMS 主 要包括以下功能。

数据库的建立和维护功能:包括建立数据库的结构和数据的录入与转换、数据库的 转储与恢复、数据库的重组与性能监视等功能。
数据定义功能:包括定义全局数据结构、局部逻辑数据结构、存储结构、保密模式 及信息格式等功能。保证存储在数据库中的数据正确、有效和相容,以防止不合语 义的错误数据被输入或输出。
数据操纵功能:包括数据查询统计和数据更新两个方面。
数据库的运行管理功能:这是数据库管理系统的核心部分,包括并发控制、存取控 制、数据库内部维护等功能。
通信功能:DBMS 与其他软件系统之间的通信,如 Access 能与其他 Office 组件进行 数据交换。

 

bdc44c6a4e044e78a60f0d39f76eb5ce.png
(2)功能

 

① 数据定义

② 数据处理

③ 数据安全

④ 数据备份

(3)架构

① 单机架构

② 大型主机/终端架构

③ 主从式架构(C/S)

④ 分布式架构

(4)分类

 ①层次数据库
层次模型数据库系统是最早研制成功的数据库系统,这种数据库最成功的典型是IMS。

IMS的全称时Information Management System,由IBM公司研制成功。

IMS于1969年投入运行,最早的版本有IMS/360-1和IMS/360-2。较近的版本有IMS/VS DL/1,它是在操作系统DOS/VS(Disk Operation System/Virtual Storage)支持下运行。


②网状数据库
网状数据库是采用网状原理和方法,以网状数据模型为基础建立的数据库。一般是指由网状数据库管理系统产生的网状数据库系统。网状数据模型是以记录类型为结点的网络结构,即一个结点可以有一个或多个下级结点,也可以有一个或多个上级结点,两个结点之间甚至可以有多种联系。

例如“教师”与“课程”两个记录类型,可以有“任课”和“辅导”两种联系,称之为复合链。两个记录类型之间的值可以是多对多的联系,例如一门课程被多个学生修读,一个学生选修多门课程。

③RDBMS 关系型数据库
Relational Database Management System,关系模型最初由IBM公司的英国计算机科学家埃德加·科德(Edgar F. Codd)于1969年描述,1974年,IBM开始开发系统R,这是一个开发RDBMS原型的研究项目。然而,第一个商业上可用的RDBMS是甲骨文,于1979年由关系软件(现为甲骨文公司)发布。
 

2.关系型数据库

(1)概念

关系型数据库组成:

表1 关系型数据库组成

组成功能

关系Relational 

关系就是二维表,其中:表中的行、列次序并不重要
行row表中的每一行,又称为一条记录record
列column表中的每一列,称为属性,字段,域field
主键Primary keyPK , 用于惟一确定一个记录的字段,一张表只有一个主键
域domain
 
属性的取值范围

(2)常用关系型数据库

常用关系型数据库如下:

表2 常用关系型数据库

类型特点

MySQL(甲骨文公司收购)

免费、开源、体积小

SQL Server(微软公司产品)

面向Windows操作系统

简单、易用

Oracle(甲骨文公司产品)

 

面向所有主流平台安全、完善,操作复杂

DB2(IBM公司产品)

 

面向所有主流平台大型、安全、完善

PostgreSQL(加州大学计算机系开发的POSTGRES)

 

简称为pgsql,EnterpriseDB

(3)关系型数据库三要素

关系型数据库三要素:

表3 关系型数据库三要素

要素功能

实体

也称为实例,对应现实世界中可区别于其他对象的“事件”或“事物”

 

属性

 

实体所具有的某一特性,一个实体可以有多个属性

联系

实体集之间的对应关系称为联系,也称为关系

(4)关系型数据库与非关系型数据库

①关系型数据库

 

关系数据库系统是基于关系模型的数据库系统,它的数据结构使用简单易懂的二维数据表,可用简单的“实体-关系”(E-R)图来表示,E-R图中包含了实体(数据对象)、关系和属性三个要素。

存储结构:

关系型数据库的存储结构是二维表格,在每个二维表中,每一行称为一条记录,用来描述一个对象的信息,每一列称为一个字段,用来描述对象的一个属性。

②非关系型数据库

非关系数据库也被称作NoSQL(Not Only SQL),存储数据不以关系模型为依据,不需要固定的表格式。

f7048d7b09f790a2d33a39f12a3b91c0.png

优点:

1) 数据库可高并发读写

2)对海量数据高效率存储与访问

3)数据库具有高扩展性与高可用性

③ 对比

表5 对比

类型关系数据库非关系型数据库
优点易于维护:都是使用表结构,格式一致; 2、使用方便:SQL语言通用,可用于复杂查询; 3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。 格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等,文档形式、 图片形式等等,使用灵活,应用场景广泛,而关系型数据库则只支持基础类型。 2、速度快:nosql可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘; 3、高扩展性与高可用性; 4、成本低:nosql数据库部署简单,基本都是开源软件。
 
缺点读写性能比较差,尤其是海量数据的高效率读写; 2、固定的表结构,灵活度稍欠; 3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。不提供sql支持,学习和使用成本较高; 2、无事务处理; 3、数据结构相对复杂,复杂查询方面稍欠。

3.数据库

(1)数据

数据用来描述事物的符号记录,包括数字,文字、图形、图像、声音、档案记录等,以“记录”形式按统一的格式进行存储。

7261f8729dc44b1fb5eb0b0ec12a5034.png

 

(2)表

表将不同的记录组织在一起,用来存储具体数据。

(3)数据库

表的集合是存储数据的仓库,以一定的组织方式存储的相互有关的数据集合。

(4)数据库访问流程

e2f3dc6df5d1474b997d60836a555321.png

 

4.MySQL数据库

(1)概念

一款深受欢迎的开源关系型数据库,Oracle旗下的产品,遵守GPL协议,可以免费使用与修改。

官网:MySQL

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L05hbl9GZW5nNzI2,size_16,color_FFFFFF,t_70

(2)特点

 表6 MySQL特点

特点功能
 可靠性高
MYSQL是严格遵循ACID(原子性、一致性、隔离性、持久性)规范的关系型数据库,因此保证了数据的可靠性。
免费开源
MYSQL是免费开源的数据库系统,其代码完全公开,可以随意使用、修改和分发。
跨平台兼容性好
MYSQL可以运行在各种操作系统上,如Linux、Windows、Mac OS等,且支持各种编程语言接口,如PHP、Java等,实现了与其他应用程序的兼容性。
可扩展性强
MYSQL可以实现多台服务器的集群部署,提高了数据库性能和可靠性。
功能丰富
MYSQL拥有完善的数据类型支持、事务处理、查询处理、存储过程等丰富的功能。
性能高效
MYSQL采用了高效的存储引擎,如InnoDB、MyISAM等,提高了系统的性能,且支持水平扩展、垂直扩展等多种优化策略。
 安全性高
MYSQL提供了完善的安全功能,如用户权限管理、访问控制等,可以有效保护数据的安全。

(3)分类

MySQL主要分为:mysql、mariadb、percona Server 

d5b05eb99d394b3da624be1a49b3667c.png

(4)组成

表7 MySQL组成

类别功能
客户端程序

mysql: 交互式的CLI工具

mysqladmin:基于mysql协议管理mysqld

mysqlimport:数据导入工具

MyISAM存储引擎的管理工具:

myisamchk:检查MyISAM库

myisampack:打包MyISAM表,只读

服务器端程序

mysqld_safe

mysqld

mysqld_multi 多实例 

5.MySQL部署

(1)编译安装MySQL数据库

 安装相关依赖包

yum -y install gcc gcc-c++ cmake bison bison-devel zlib-devel libcurl-devel libarchive-devel boost-devel   ncurses-devel gnutls-devel libxml2-devel openssl-devel libevent-devel libaio-devel

②下载并压缩源码包

#切换目录,上传压缩包
cd /opt
rz -E
 
#解压
tar xf  mysql-boost-5.7.20.tar.gz

③编译安装 

1. #切换目录
cd mysql-5.7.20/
 
2. #编译
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8  \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=boost \
-DWITH_SYSTEMD=1
 
3. #安装
make -j2 && make install
 
#############模块解释#####################
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
#指定mysql的安装路径
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
#指定mysql进程监听套接字文件(数据库连接文件)的存储路径
-DSYSCONFDIR=/etc \
#指定配置文件的存储路径
-DSYSTEMD_PID_DIR=/usr/local/mysql \
#指定进程文件的存储路径
-DDEFAULT_CHARSET=utf8  \
#指定默认使用的字符集编码,如utf8
-DDEFAULT_COLLATION=utf8_general_ci \
#指定默认使用的字符集校对规则
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
#安装INNOBASE存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
#安装ARCHIVE存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
#安装BLACKHOLE存储引擎
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
#安装FEDERATED存储引擎
-DMYSQL_DATADIR=/usr/local/mysql/data \
#指定数据库文件的存储路径
-DWITH_BOOST=boost \
#指定boost的路径,
-DWITH_SYSTEMD=1
#生成便于systemctl管理的文件

④数据库目录进行权限调整、改变属主属组

useradd -s /sbin/nologin mysql
chown -R mysql:mysql /usr/local/mysql/
chown mysql:mysql /etc/my.cnf

⑤调整配置文件

vim /etc/my.cnf
--------------------------内容如下
[client]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock
 
[mysql]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock
 
[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
character_set_server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket = /usr/local/mysql/mysql.sock
server-id = 1
 
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES

⑥设置环境变量

#配置环境变量
echo 'PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile
echo 'export PATH' >> /etc/profile
 
#刷新
source /etc/profile
 
#查看是否成功
echo $PATH

⑦初始化数据库

#切换目录
cd /usr/local/mysql/
 
#初始化
bin/mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data
 
cp usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/

⑧数据库开启自启、关闭、状态

systemctl enable mysqld        #设置开机自启
systemctl start mysqld         #开启
systemctl stop mysqld          #关闭
systemctl start mysqld         #开启
systemctl status mysqld        #查看状态
ss -anpt | grep 3306           #过滤端口验证是否开启

⑨设置MySQL密码

#修改密码为123123 开始初始密码为空  回车即可
mysqladmin -u root -p password "123123"

⑩登录、登出MySQL 

#登录
mysql -u root -p
 
#授予root用户可以在所有终端远程登录,使用的密码是123123,并对所有数据库和所有表有操作权限
grant all privileges on *.* to 'root'@'%' identified by '123123';
 
#退出
quit

(2)yum安装MySQL数据库

1. #创建mysql源
cd /etc/yum.repos.d/
vim mysql.repo
[mysql]
name=mysql5.7
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64/
gpgcheck=0
 
2. #安装服务mysql-community-server
yum install mysql-community-server -y 
 
3. #启动服务
systemctl start mysqld
ss -ntap |grep 3306
 
4. #登入数据库,但是密码是默认的,需要查看
mysql -u root -p
grep password /var/log/mysqld.log
mysql -u root -p'默认的密码'
#特殊符号用单引号引起来
 
5. #登入数据库后必须修改密码
alter user root@'localhost' identified by 'Admin@123';
#alter user root@'主机名' identified by '新密码';

grant all privileges on *.* to root@"%" identified by "Admin@123" with grant option;
flush privileges;
 
#可以使用mysql> \h查看帮助

 

(3)配置MySQL数据库的Tab补全 

①yum安装的自动补全

vim /etc/my.cnf
--------------------添加
[mysql]
prompt=(mysql) [\\d]>\\_
auto-rehash

② 安装mycli 插件

需要先修改配置文件安装自动补全功能

vim /etc/my.cnf
--------------------添加
[mysql]
prompt=(mysql) [\\d]>\\_
auto-rehash

安装

1. #安装依赖包
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
 
2. #压缩安装包
cd /opt
rz -E
tar zxvf Python-3.8.0_.tgz
 
3 #切换目录编译安装
cd Python-3.8.0/
./configure --prefix=/usr/local/Python-3.8.0/
make -j2 && make install
 
4. #做软链接
ln -s  /usr/local/Python-3.8.0/bin/python3.8  /usr/bin/python38
ln -s /usr/local/Python-3.8.0/bin/pip3.8 /usr/bin/pip38
pip38 install mycli -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com
ln -s /usr/local/Python-3.8.0/bin/mycli /usr/bin/mycli
 
5. #登录
mycli -u root -p 123123

 

二、实验

1.yum安装MySQL

(1)配置MySQL源

d520e66973b04df0875c7b120bfd9c88.png

 

ccbb395f94b14683a49bb8ddeebe6a72.png

 (2)安装396e7d645d304866b2e9a9978c93527a.png

 (3)启动并监听服务

43442c37736e47a09df4cc31fd96a60f.png

 

2.配置MySQL数据库的Tab补全 

(1)修改配置文件安装自动补全功能

7547fc52d94747dfa768a1f15dd6b724.png

f6976e6dbbe2421895ac0075d7084791.png

(2)安装依赖包

9be48957242041cebe3d18517aea4c4c.png

 (3)解压

11a71aa48d67438ba2e73d8ffed41a09.png

 (4)编译安装

3bd2932fe04342b19ea8f97c62b5bc79.png

83763ef0ffbc407cb2f32b200565d772.png

fa58b44c3d4b4120878baaf4031f46fc.png

 (5)做软链接

查看

682cef0e6bba419fb66a787aade09007.png

ln -s  /usr/local/Python-3.8.0/bin/python3.8  /usr/bin/python38
ln -s /usr/local/Python-3.8.0/bin/pip3.8 /usr/bin/pip38
pip38 install mycli -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com

查看

fb5eeda04b4c4c2096a5d19d5f8dd671.png


ln -s /usr/local/Python-3.8.0/bin/mycli /usr/bin/mycli

(6)登录验证

可以自动补全

4598bd6519554a579eacad6d149bd9ee.png

三、问题

1.数据库登录报错

(1) 报错

1045(28000):用户'root'@'localhost'(使用密码:YES)拒绝访问

首先解析此英文:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES);
解析的地方有两处:Access denied(拒绝访问);using password:NO/YES

a055551bb50247e193442c10143414d0.png

(2) 原因分析

① mysql的服务器停止:
  若MySQL已经没有启动,重启MySQL服务器:systemctl restart mysqld
② 用户的端口号或者IP导致:
  若用户的端口号与IP(3306/3307)不一致,打开my.ini文件进行编辑。全部编辑替换为: port=X
③ mysql的配置文件错误----my.ini等文件:
  my.ini文件误输入无效内容,不知道到何处。复制替换该文件;有人已经对my.ini文件进行解释以及注释
④ root用户的密码错误(后面解决)

(3)解决方法

vim /etc/my.cnf文件;
在[mysqld]后添加skip-grant-tables(登录时跳过权限检查)

27114f0f3077449fbd911d9475aad459.png

793fcbca11d24a139ff6547dc3072281.png

 重启MySQL服务:sudo systemctl restart mysqld

752c3815a1374f7989a1df7739f22417.png

输入:set password for ‘root’@‘localhost’=password(‘123456’);

如果报:ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

 输入:flush privileges;

再次输入:set password for ‘root’@‘localhost’=password(‘123456’);

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '123456' WITH GRANT OPTION;

flush privileges;

如果还不行,修改命令

update mysql.user set authentication_string=password('123456') where user='root='root'and Host ='localhost';
90a3d9058c98401684af7704a82e37c7.png

2.数据库密码复杂度报错

 (1)报错

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

c2c88c1824dc46059913cdba8afb8879.png

(2)原因分析

mysql 初始化时,使用临时密码,修改自定义密码时,由于自定义密码比较简单,就出现了不符合密码策略的问题。

(3)解决方法

查看 mysql 初始的密码策略,
输入语句 show variables like 'validate_password%';
进行查看,如下:

ef5a8cb54cea4d0e91bba7f7391b9d00.png

首先需要设置密码的验证强度等级,设置 validate_password_policy 的全局参数为 LOW 即可,
输入设值语句 set global validate_password_policy=LOW;  进行设值,如下:

73c330d64389479f87a98f19231b073a.png

 当前密码长度为 8 ,如果不介意的话就不用修改了,按照通用的来讲,设置为 4位的密码,设置 validate_password_length 的全局参数为 6即可,
输入设值语句 “ set global validate_password_length=6; ” 进行设值,

e0c7993532d04c478dc62d6f09307fa9.png

 

四、总结

关系数据库和非关系数据库区别:数据一致性不同、数据存储方式不同、扩展方式不同、对事务性的支持不同。

关系型数据库三要素:实体、属性、联系。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/730898.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

UML类图的6种关系

目录 一、UML类图的6种关系(依赖关系由弱到强): 二、6种关系归纳总结 2.1 第一种归纳方式:先分组,再分组(由大到小,由宏观到微观) 2.2 第二种归纳方式:先聚合&#x…

spring-spring整合Junit

1.导包 <artifactId>spring-test</artifactId> <artifactId>junit</artifactId> 2.创建测试类

Linux性能优化实践——如何学习Linux性能优化

性能指标 学习性能优化的第一步便是了解“性能指标”这个概念。 “高并发”和“响应快”对应着性能优化的两个核心指标——“吞吐”和“延时”。这两个指标是从应用负载的角度来考察性能的&#xff0c;直接影响了产品终端的用户体验。跟他们对应的&#xff0c;是从系统资源的视…

基于Flask的问答系统的设计与实现

这个项目刚开始是跟着哔哩哔哩上的一个教程学习的&#xff0c;后面完成初步实现后&#xff0c;我按照自己的设计加入了新的功能。 文章目录 数据表mysqlredis 项目展示注册登录首页问题详情页问题回答及回复搜索功能发布问题功能评论我的功能回复我的功能我的文章功能编辑文章…

springcloud eureka增加安全认证

网上很多资料写的不全&#xff0c;不细致。 springcloud架构&#xff0c;本地运行代码是eureka地址一般为localhost:port&#xff08;自己暴露的端口&#xff09;&#xff0c;例如http://localhost:9000/ &#xff0c;但是如果在服务器&#xff0c;且使用k8s部署&#xff0c;一…

科大讯飞开发者大赛,有点东西~

小伙伴们大家好&#xff0c;我是阿秀。 如果要说 23 年上半年最火的科技圈话题是什么&#xff1f; 那AIGC和大模型相关的话题稳坐头把交椅&#xff0c;奈何由于不少服务器在海外&#xff0c;很多人因为没有充分条件无法体验。 后来众多国产大模型也跟上步伐&#xff0c;智能问答…

Spring Boot 中的任务执行器是什么,如何使用

Spring Boot 中的任务执行器是什么&#xff0c;如何使用 Spring Boot 是一个非常流行的 Java 开发框架&#xff0c;它的核心理念是通过简单的配置和约定来提高开发效率。在很多情况下&#xff0c;我们需要在后台执行一些任务&#xff0c;比如异步处理、定时任务等等。为了简化…

数据结构错题集 第八章 排序

8.1 3 B 稳定性问题&#xff1a; 是按关键字排序的 数值一样的两个数是两个不同的关键字 顺序可能不同 4.记住公式即可 8.2 B D与初始序列无关 选择排序&#xff1a;在n个中选择最小的 放在第一个 在n-1个中 选择第二小的放在第二个 快速排序 越有序 反而越复杂化 直接插入…

Spring底层核心架构

Spring底层核心架构 相关的配置类 1. user类 package com.zhouyu.service;import org.springframework.stereotype.Component;public class User { }2. AppConfig类 package com.zhouyu;import org.springframework.context.annotation.*; import org.springframework.sched…

CASS扣除中间区域面积的方法

1、打开cass软件&#xff0c;绘制一个矩形和圆形&#xff0c;圆形全部位于矩形框内&#xff0c;具体如下&#xff1a; 2、点击“地物编辑”菜单栏下的“图案填充”&#xff0c;如下&#xff1a; 3、在命令行内输入实体填充、选择范围线方式填充&#xff0c;选择后可得到如下结果…

基于单片机的智能路灯控制系统人体感应灯光控制系统的设计与实现

功能介绍 以51单片机作为主控系统&#xff1b;LCD1602液晶显示当前时间、年月日、时分秒&#xff1b;按键看看有设置自动手动模式&#xff1b;3路红外探头用来感应当前3个区域是否有人&#xff1b;按键可以设置当前时间、开启和关闭教室灯光时间&#xff1b;在手动模式下&#…

debian to go

可以使用虚拟机操作&#xff0c;在运行镜像到安装步骤时选择 u盘 不需要手动分 /boot 分区之类的&#xff0c;“Automaction”自动分区就行&#xff0c;全安装到根目录。boot load 安装到 /dev/sdb&#xff0c;也就是硬盘本身 推荐使用gpt分区表&#xff0c;建议拿不用的盘练…

Basic of Solidity (solidity基础)

目录 1.first contract 申明编译器版本 定义合约 合约构造函数 定义变量 定义函数 2.data type 值类型&#xff08;Value Types&#xff09; 引用类型&#xff08;Reference Types&#xff09; 映射类型&#xff08;Mapping Types&#xff09; Solidity是一种用于编写…

vue + element 笔记(vue2.0)

1.安装nodejs&#xff0c;cmd中运行 node -v 验证是否成功 2.安装cnpm&#xff0c;cmd中运行 npm install -g cnpm --registryhttps://registry.npm.taobao.org&#xff0c;cmd中 cnpm -v 验证是否成功 3.安装vue-cli&#xff0c;cmd中运行 cnpm install --global vue-cli&…

三、Java的运算符

三、运算符 运算符是一种特殊的符号&#xff0c;用以表示数据的运算、赋值和比较等。 3.1、算术运算符 - * / % (前) (后) (前)-- (后)-- % :取余运算 结果的符号与被模数的符号相同 开发中&#xff0c;经常使用%来判断能否被除尽的情况 3.2、赋值运算符 注意&#xff1a;s2…

Spring Boot 中的 Native SQL 是什么, 如何使用

在 Spring Boot 中&#xff0c;我们通常使用 ORM 框架&#xff08;例如 Hibernate 或 MyBatis&#xff09;来操作数据库。但是&#xff0c;有时候我们需要执行一些自定义的 SQL 查询或更新语句&#xff0c;这时候就需要使用 Spring Boot 中的 Native SQL。 在本文中&#xff0…

Matlab绘图系列教程-Matlab 34 种绘图函数示例(下)

Matlab绘图系列教程&#xff1a;揭秘高质量科学图表的绘制与优化 文章目录 Matlab绘图系列教程&#xff1a;揭秘高质量科学图表的绘制与优化第一部分&#xff1a;入门指南1.1 简介关于本教程的目的与范围Matlab绘图在科学研究中的重要性 1.2 准备工作安装Matlab及其工具箱 1.3 …

8、添加PolylineCollection线

本节演示添加线要素&#xff0c;使用第四节单击事件的例子&#xff0c;修改点击事件创建线要素。 1、重新修改地图默认位置 double r glm::radians(-45.0); Cesium::HeadingPitchRoll *orientation new Cesium::HeadingPitchRoll(0.0, r, 0.0); glm::dvec3 initialPosition…

map和set的封装

目录 封装逻辑 用红黑树封装set和map 红黑树的定义改变 迭代器 红黑树的迭代器 set的迭代器 map重载[]操作的实现 比较关键——得到 key的类型K 封装逻辑 用红黑树封装set和map map和set用红黑树来实现的&#xff1b;红黑树的前三个模板参数分别表示&#xff1a;得到key的…

C语言---程序环境和预处理(底层原理万字详解)

文章目录 前言&#x1f31f;一、程序的翻译环境和执行环境&#x1f31f;二、详解编译链接&#x1f30f;2.1命令&#x1f30f;2.2 板书详解&#x1f30f;2.3运行环境 &#x1f31f;三、预处理详解&#x1f30f;3.1预定义符号&#x1f30f;3.2 #define&#x1f4ab;3.2.1 #define…