数据库基础

MySql的前戏
在学习mysql之前,我们先来想一下一开始做的登录注册案例,当时我们把用户的 信息保存到一个文件中:
id | 用户名|密码
1 | a| 123
2 | b| 123

上面文件内容的规则是自己定义的,别人想用这个程序,必须按照我定义的规则去执行,但凡不是这个规则,就不能用.

mysql其实就是一个软件,管理我们文件的一个软件
对于mysql这个软件来说有两个软件:
---服务器软件
-socket服务端
-本地文件操作
-解析指令(mysql语句)

---客户端软件
-socket客户端
-发送指令
-解析指令(mysql语句)

解释:对于服务端软件中的socket服务器是一直开着,客户端得需要连接,并且还有创建文件,删除文件等等的操作
对于客户端软件中的socket客户端,我们得需要发送指令命令socket服务端对文件进行操作

数据库概述
什么是数据(Data):
描叙事物的符合记录称为数据,描述事物的符合即可以是数字,也可以是文字,图像,图片,声音
语言等,数据由多种表现形式,它们都可以经过数字化后存入计算机.
在计算机中描叙一个事物,就需要抽取这一事物的典型特征,组成一条记录,就相当于文件里的一行内
容,如:1 jack,18,北京,计算机系
单纯的一条记录并没有任何意义,如果我们按逗号作为分隔,依次定于各个字段的意思,相当于定义表的标题
id | name | age | site | subject
1 | jack | 18 | 北京 | 计算机系

这样通过表格我们很清楚的知道了某人的详细的信息

什么是数据库(DataBase,简称DB)
数据库即存放数据的仓库,只不过这个仓库是计算机存储设备上,而且数据库是按一定的格式
存放的过去人们将数据库存放在文件柜里,现在数据庞大,已经不再适用
数据库是长期存在在计算机内,有组织,可共享的数据即可
数据库中的数据按一定的数据模型组织,描叙和存储,具有较小的冗余度,较高的数据独立性
和易扩展性,并可为各种用户共享

什么是数据库管理系统(DataBase Management System)
知道数据和数据库之后,如何科学地组织和存储数据,如何高效获取和维护数据成了关键
这就用到了一个系统软件--数据库管理软件
如 Mysql ,Oracle ,SQLite,Access,MS SQL Server
mysql主要用于大型门户,例如搜狗,新浪,它主要的优势就是开放源代码,数据库是免费的,甲骨文公司的产品
oracle主要用于银行,铁路,飞机场等.该数据库功能强大,软件费用高,也是甲骨文公司的产品
sql server是微软公司的产品,主要用于大中型企业,如联想,方正等.

数据库服务器,数据库系统,数据库,表与记录的关系
记录:1 xxx 123 (多个字段的信息组成的一条记录,即文件中的一行)
表: student,scholl,class (即文件)
数据库:folde_stu(即文件夹)
数据库管理系统:如mysql(是一个软件)
数据库服务器:一台计算机(对内存要求比较高)

总结:
数据库服务器:运行数据库管理软件
数据库管理软件:管理-数据库
数据库:即文件夹,用来组织文件/表
表:即文件,用来存放多行内容/多条记录


MySql安装和基本管理
mysql是一个关系型数据库管理系统,由瑞典MySql AB公司开发的,目前属于甲骨文公司
mysql是最流行的关系型数据库管理系统,在WEB应用方面mysql是最好的RDBMS(Relational
Database Management System,关系数据库管理系统)应用软件之一.

mysql是什么?
mysql就是一个基于socket编写的C/S架构的软件

数据库管理软件分类
分两大类:
关系型:如sqllite,db2,oracle,access,sql server,mysql 注意:sql语句通用
非关系型:mongodb,redis,memcache

可以简单理解为:
关系型数据库需要表结构
非关系型数据库是key-value存储的,没有表结构


mysqld的下载安装:
1.安装mysql服务端
2.安装mysql客户端
3.客户端连接服务端
4.客户端发送命令给服务端mysql服务的接受命令并执行相应的操作(增删改查等)

window版本
1.去mysql官网下载对应的版本
2.下载文件解压到指定的安装目录
3.添加环境变量
计算机属性->高级系统设置->环境变量->找到系统的Path一行->将mysql的bin目录加
到变量值中,用;分割
4.初始化
mysald --initializer-insecuer
5.启动musql服务
mysqld #启动mysql服务
6.启动mysql客户端并连接mysql服务端(新开一个cmd窗口)
mysql -u root -p (连接mysql服务)
上一步的安装解决了一些问题,但还彻底不够,因为在执行mysqld启动mysql服务时,当前终端hui
被hang住,需要将mysql服务制作成windows服务
注意:--install前,必须用mysql启动命令的绝对路径
#制作mysql的windows服务,在终端执行此命名:
c:K:\MySQL\MySQL Server 5.7.23\bin\mysqld --install

#移除mysql的windows服务,在终端执行此命令:
c:K:\MySQL\MySQL Server 5.7.23\bin\mysqld --remove

注册成功之后,以后在启动和关闭mysql服务时,仅需要执行如下命令:
#启动mysql服务:net start mysql
#关闭mysql服务:net stop mysql


windows下登录设置密码:
先登录mysql:(默认是没有密码)
update mysql.user set authentication_string =password("123456") where User='root';
update mysql.user set authentication_string =password('123') where User='root';
修改密码之后刷新权限:
flush privileges;

破解密码;
-先把原来mysql服务端关闭(关闭进程)
-用管理员身份运行执行:mysql --skip-grant-tables
-客户端连接服务端,此时修改密码,注意修改密码之后一定是刷新权限权限

创建用户:
1.创建用户:
#指定ip:192.168.1.1的root_new用户登录
create user 'root_new'@"192.1.1.1"identified by '123';

#指定ip:192.118.1.开头的root_new用户登录
create user 'root_new'@"192.118.1.%" identified '123';

#指定任何ip的root_new用户登录
create user 'root_new'@"%" identified by '123';


客户方连接数据库:
mysql -u用户名 -h192.168.12.12(对方开放网段) -p密码



posted @ 2018-09-17 22:33  Hear7  阅读(90)  评论(0编辑  收藏  举报