数据库初体验

<a name="br1"></a>**数据库初体验**

**一、数据库的基本概念**

a.

**数据(Data)**

i.

描述事物的符号记录、包括数字、文字、图形、图像、声音、档案记录等以“记录”形式

按统一格式进行存储。

b.

****

i.

讲不通的记录组织在一起,同来存储具体数据。

c.

**数据库**

i.

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

d.

**数据库管理系统(DBMS)**

i.

是实现对数据库资源有效组织、管理和存取的系统软件。

ii.

数据库的建立和维护功能、数据定义功能、数据操纵功能、数据库的运行管理功能、通信

功能。

e.

**数据库系统**

i.

是一个人机系统,由硬件、OS、数据库、DBMS、应用软件和数据库用户组成。

ii.

用户可以通过DBMS或应用程序操作数据库。

**二、当今主流数据库介绍**

**名称 特点**

SQL Server(微软公司产品) 面向Windows操作系统简单、易用

Oracle(甲骨文公司产品) 面向所有主流平台安全、完善、操作复杂

DB2(IBM公司产品) 面向所有主流平台大型、安全、完善

MySQL(甲骨文公司收购) 免费、开源、体积小

a.

**数据库发展史**

i.

**第一代数据库第一代数据库系统问世。**

1\.20世纪60年代起,第一代数据库系统问世。

2\.

是层次模型与网状模型的数据库系统。




<a name="br2"></a>3.

为统一管理和共享数据提供了有力的支撑。

ii.

**第二代数据库**

1\.

20世纪70年代初,第二代数据库——关系数据库开始出现。

2\.

20世纪80年代初,IBM公司的关系数据库系统DM2问世,开始逐步取代层次与网状模

型的数据库,成为行业主流。

3\.

到目前为止,关系数据库仍占领数据库应用的主要地位。

iii.

**第三代数据库**

1\.20世纪80年代开始,适应不同领域的新型数据库系统不断涌现。

2\.

面向对象的数据库系统,实用性强、适应面广。

3\.

20世纪90年代后期,形成了多种数据库系统共同支撑应用的局面。

4\.

一些新的元素被添加进主流数据库系统中。

a.

例如,Oracle支持的“关系-对象”数据库模型。

**三、数据库类型**

a.

**关系数据库系统**

i.

关系数据库系统是基于关系模型的数据库系统。

ii.

关系模型的数据结构使用简单易懂的二维数据表。

iii.

关系模型可用简单的“实体关系(E-R)图”来表示。

iv.

E-R图中包含了实体(数据对象)、关系和属性三个要素。

v.

**实体**

1\.

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

2\.

如职工、部门等。

vi.

**属性**

1\.

属性为事物的某一方面特征的抽象描述。如学生这个事物,可以通过职工的“姓名”、

“职工号”、“工种”等特征来描述,这些特征称为属性。





||<p><a name="br3"></a>vii.</p><p>**联系**</p>|
| :- | :- |
||<p>1\.</p><p>实体集之间的对应关系称为联系,也称为关系。</p>|
||<p>a.</p><p>如职工和部门之间存在“经理”的关系。</p>|
||<p>viii.</p><p>所有实体及实体之间联系的集合构成一个关系数据库。</p>|
||<p>ix.</p><p>关系数据库的存储结构是二维表格。</p>|
||<p>x.</p><p>**在每行二维表中**</p>|
||<p>1\.</p><p>每一行称为一条记录,用来描述一个对象的信息。</p>|
||<p>2\.</p><p>每一列称为一个字段,用来描述对象的一个属性。</p>|
||<p>xi.</p><p>**关系型数据库**</p>|
||<p>1\.</p><p>Oracle、MySQL</p>|
||<p>2\.</p><p>SQL server、Sybase</p>|
||<p>3\.</p><p>lnformix、access</p>|
||<p>4\.</p><p>DM2、FoxPro</p>|
||<p>b.</p><p>**非关系数据库系统**</p>|
||<p>i.</p><p>非关系数据库也称为NoSQL(Not Only SQL)</p>|
||<p>ii.</p><p>存储数据不以关系模型为依据,不需要固定的表格式。</p>|
||<p>iii.</p><p>**非关系型数据库的优点**</p>|
||<p>1\.</p><p>数据库支持高可用并发读写。</p>|
||<p>2\.</p><p>对海量数据高效率存储与访问。</p>|
||<p>3\.</p><p>数据库具有高扩展性与高可用性</p>|
||<p>iv.</p><p>**常用的非关系型数据库**</p>|
||<p>1\.</p><p>Redis、mongoDB等。</p>|
**四、MySQL数据库介绍**

||<p>a.</p><p>一款深受欢迎的开源关系型数据库。</p>|
| :- | :- |
||<p>b.</p><p>Oracle旗下的产品。</p>|
||<p>c.</p><p>遵守GPL协议,可以免费使用与修改。</p>|
||<p>d.</p><p>MySQL下载官网:[MySQL](https://dev.mysql.com/downloads/mysql/)[ ](https://dev.mysql.com/downloads/mysql/)[::](https://dev.mysql.com/downloads/mysql/)[ ](https://dev.mysql.com/downloads/mysql/)[Download](https://dev.mysql.com/downloads/mysql/)[ ](https://dev.mysql.com/downloads/mysql/)[MySQL](https://dev.mysql.com/downloads/mysql/)[ ](https://dev.mysql.com/downloads/mysql/)[Community](https://dev.mysql.com/downloads/mysql/)[ ](https://dev.mysql.com/downloads/mysql/)[Server](https://dev.mysql.com/downloads/mysql/)</p>|
||<p>e.</p><p>**特点**</p>|
||<p>i.</p><p>性能卓越、服务稳定。</p>|
||<p>ii.</p><p>开源、无版权限制、成本低。</p>|
||<p>iii.</p><p>多线程、多用户。</p>|
||<p>iv.</p><p>基于C/S(客户端/服务器)架构。</p>|
||<p>v.</p><p>安全可靠。</p>|
||<p>f.</p><p>MySQL商业版是由MySQL AB公司负责开发与维护,需要付费才能使用。</p>|
||<p>g.</p><p>MySQL社区版是由分散在世界各地的MySQL开发者、爱好者一起开发与维护,可以免费使</p>|




<a name="br4"></a>用。

h.

**两者区别**

i.

商业版组织管理与测试环节更加严格,会比社区版更稳定。

ii.

商业版不遵守GPL,社区版遵从GPL可以免费使用。

iii.

商业版可获得7\*24小时的服务,社区版则没有。

i.

**MySQL产品阵营**

i.

第一阵营:5.0-5.1阵营,可说是早期产品的延续。

ii.

第二阵营:5.4-5.7阵营,整合了MySQL AB公司、社区和第三方公司开发的存储引擎,

从而提高性能。

iii.

第三阵营:6.0-7.1阵营,就是MySQL Cluster版本,为适应新时代对数据库的集群需求

而开发。

**五、MySQL数据库安装**

a.

准备工作

1 rpm -qa | grep mariadb //如果存在rpm版MariaDB,请先卸载 1

2 getenforce 0 //查看安全机制是什么状态 2

3 yum -y install gcc gcc-c++ make ncurses-devel openssl-devel //MySQL必须的开发工具包 3

4 tar zxf cmake-3.16.2.tar.gz -C /usr/local/ 4

5 cd /usr/local/cmake-3.16.2/ 5

6 ./configure && gmake && gmake install //编译安装MySQL需要的cmake工具 6

7

tar zxf boots\_1\_59\_0.tar.gz

8 mv boost\_1\_59\_0 /usr/local/boost //MySQL5.7编译安装需要boots库 8

b.

源码编译及安装

||1||<p>#MySQL5.7编译安装时间较长,且占用CPU和磁盘资源较多,虚拟机磁盘推荐大于10GB,并且在MySQL-</p><p>5\.7.28版本及以上版本安装MySQL都要指定boost库</p>|
| :- | :- | :- | :- |
2

groupadd mysql

3 useradd -M -s /sbin/nologin -g mysql mysql 3

4 tar zxf mysql-5.7.28.tar.gz -C /usr/src/ 4

5 cd /usr/src/mysql-5.7.28/ 5

6 make clean 6

||7||<p>cmake -DCMAKE\_INSTALL\_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -</p><p>DDEFAULT\_CHARSET=utf8 -DDEFAULT\_COLLATION=utf8\_general\_ci -DWITH\_EXTRA\_CHARSETS=all</p><p>DWITH\_BOOST=/usr/local/boost && make && make install</p>|
| :- | :- | :- | :- |
\-

8 ##注释: 8

9 -DCMAKE\_INSTALL\_PREFIX=/usr/local/mysql //mysql的安装路径 9




<a name="br5"></a>10 -DSYSCONFDIR=/etc //指定主配置文件路径 10

11 -DDEFAULT\_CHARSET //指定默认使用的字符集编码 11

|12||<p>-DDEFAULT\_COLLATION=utf8\_general\_ci</p><p>适用于 UTF-8 字符集的通用规则。</p>||//指定默认使用的字符集校对规则,utf8\_general\_ci 是|
| :- | :- | :- | :- | :- |
13 -DWITH\_EXTRA\_CHARSETS=all //并且支持其他字符集 13

14 -DWITH\_BOOST=/usr/local/boost //指定boost“库”路径 14

c.

安装后的其他调整

1

rm -rf /etc/my.cnf

2 vim /etc/my.cnf //调整MySQL配置文件 2

3 [client] 3

4 socket=/usr/local/mysql/data/mysql.sock 4

5 [mysqld] 5

6 server-id = 1 6

7 log-bin = mysql-bin 7

8 socket=/usr/local/mysql/data/mysql.sock 8

9

bind-address = 0.0.0.0

10 skip-name-resolve 10

11 port = 3306 11

12 basedir=/usr/local/mysql 12

13 datadir=/usr/local/mysql/data 13

14 max\_connections=2048 14

15 character-set-server=utf8 15

16 default-storage-engine=INNODB 16

17 lower\_case\_table\_names=1 17

max\_allowed\_packet=16M 18

19 echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile 19

source /etc/profile //19、20两行是设置系统能识别MySQL命令字,否则无法后续对MySQL进行命令字 20

操作

21 ##注释 21

22 [client] ##针对客户端 22

|23||<p>socket=/usr/local/mysql/data/mysql.sock ##客户机和服务器在同一台机器上,客户端使用socket协</p><p>议连接数据库:socket会生成一个路径:详细信息https://www.jianshu.com/p/066d99da7cbd</p>|
| :- | :- | :- |
24 [mysqld] ##服务器 24

25 server-id = 1 ##服务器id 25

26 log-bin = mysql-bin ##启用二进制日志文件,生成二进制文件名字mysql-bin 26

27 log-slave-updates = true ##允许从库从主库上同步二进制日志 27

28 socket=/usr/local/mysql/data/mysql.sock ##socket协议,服务端也要有 28

29

bind-address = 0.0.0.0 ##mysql服务器绑定的地址




<a name="br6"></a>skip-name-resolve ##跳过域名解析(用IP地址访问) 30

port = 3306 ##mysql的端口 31

basedir=/usr/local/mysql ##该参数指定了安装 MySQL 的安装路径,填写全路径可以解决 32

相对路径所造成的问题

|33||<p>datadir=/usr/local/mysql/data ##该参数指定了 MySQL 的数据库文件放在什么路径下。数据库</p><p>文件即我们常说的 MySQL data 文件</p>|
| :- | :- | :- |
34

max\_connections=2048 ##最大并发连接数

35 character-set-server=utf8 ##数据库使用的字符集为utf8 35

36 default-storage-engine=INNODB ##指定数据库的存储引擎 36

37 lower\_case\_table\_names=1 ##跳过表名的解析(不区分表名大小写) 37

38 ##传输数据包限制为 16M可以分多包) 38 max\_allowed\_packet=16M 16M(大于

1 cd /usr/src/mysql-5.7.28/ 1

2

3

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql -- datadir=/usr/local/mysql/data 初始化以后一般最后两行,有一行会在主机名后面生成密码,记得保
存,记得保存!!!!。如果没有了可以删除data重新初始化,就会再出现一次密码!!!!

||4||<p>##如果初始化失败进入安装路径下删除/usr/local/mysql/中删除“data”目录在切换回解压路径重新初始</p><p></p>|
| :- | :- | :- | :- |
5

6 cd /usr/src/mysql-5.7.28/ 6

7 cp support-files/mysql.server /etc/rc.d/init.d/mysqld 7

8

chmod +x /etc/rc.d/init.d/mysqld

9

vim /lib/systemd/system/mysqld.service

10

11 [Unit] 11

12 Description=mysqld 12

13 After=network.target 13

14 [Service] 14

15

Type=forking

16

ExecStart=/etc/rc.d/init.d/mysqld start

17 ExecReload=/etc/rc.d/init.d/mysqld restart 17

18 ExecStop=/etc/rc.d/init.d/mysqld stop 18

19 PrivateTmp=true 19

20 [Install] 20

21 WantedBy=multi-user.target 21

22

23

24 systemctl enable mysqld.service 24




<a name="br7"></a>25

systemctl start mysqld.service

26

systemctl status mysqld.service //开启开机自启,开机、查看MySQL状态命令

1

mysql -u root -p //进入MySQL

2 quit; //第一次默认登陆不让操作,一般都是要退出修改密码。 2

3 mysqladmin -u root -p password 'pwd123' //密码pwd123 3

4 show databases; 4

5 quit //退出 5
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Spring Boot 是一个用于快速构建独立、生产级别的 Spring 应用的框架。它通过提供默认配置和约定大于配置的原则,帮助开发者更快、更简单地搭建和部署应用程序。 初次体验 Spring Boot 可以按照以下步骤进行: 1. 环境准备:首先确保你已经安装了 JDK 和 Maven(或者 Gradle)。 2. 创建项目:使用 Spring Initializr(https://start.spring.io/)来创建一个基于 Spring Boot 的项目。选择你喜欢的构建工具(Maven 或 Gradle),填写项目的基本信息,并选择需要的依赖。点击生成按钮后,下载生成的项目压缩包。 3. 解压项目:将下载的项目压缩包解压到你想要保存项目的位置。 4. 导入项目:使用你喜欢的 IDE(如 IntelliJ IDEA、Eclipse 等)导入解压后的项目。 5. 编写代码:在项目中找到主类(一般是以 `@SpringBootApplication` 注解标记的类),这个类是整个应用程序的入口点。开始编写你的业务逻辑。 6. 运行应用:运行主类中的 `main` 方法,启动 Spring Boot 应用程序。 7. 测试应用:打开浏览器,访问 `http://localhost:8080`,查看应用程序是否正常运行。如果一切顺利,你应该能看到默认的欢迎页面。 这只是一个简单的初体验,后续你可以深入学习 Spring Boot 的各种特性和用法,包括配置文件、数据库访问、Web 开发、安全性等。希望对你有所帮助!如果你有其他问题,可以继续提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值