1、初识MySQL

1、初识 MySQL

javaEE:企业级 java 开发 web 开发

前端(页面:展示数据!)

后台(连接点:连接数据库 JDBC,连接前端(控制、控制视图跳转,和给前端传递数据))

数据库:(存数据,像 TXT,Excel,Word)

只会写代码,学好数据库,基本混饭吃
再想继续学好数据库,学习操作系统、数据结构与算法,当一个不错的程序员
再想继续学好数据库,学习离散数学、数字电路,体系结构,编译原理+实战经验  高级程序员~优秀的程序员

1.1 为什么学习数据库

1. 岗位需求

2. 现在的世界,大数据时代 ~,得数据者得天下

3. 被迫需求:存数据

4. 数据库是所有软件体系中最核心的存在 数据库管理员(Database Administrator,简称 DBA)

1.2 什么是数据库

数据库 (DB,DataBase)

概念:数据仓库,软件,安装在操作系统上(windows,linux,mac....)上,SQL 语句操作,可以存储 500 万以下的大量数据

作用:存储数据,管理数据

1.3 数据库分类

关系型数据库:(SQL)

  • MySQL,Oracle,Sql Server,DB2,SQLlite
  • 通过表和表之间,行与行之间的关系进行数据存储

非关系型数据库(NoSQL)Not Only

  • Redis,MongDB
  • 非关系型数据库,对象存储,通过对象的自身属性来决定

DBMS(数据库管理系统)

  • 数据库的管理软件,科学有效的管理数据。维护和获取数据
  • MySQL,数据库管理系统

1.4、MySQL 简介

MySQL是一种关系型数据库管理系统(RDBMS)

MySQL 是开放源代码的

前世:瑞典 MySQL AB 公司

今身:属于 Oracle 旗下产品

体积小,速度快,总体拥有成本低,招人成本比较低,所有人必须会

中小型网站,或者大型网站、集群

官网:https://www.mysql.com/

安装建议:

1. 尽量不要使用 exe 安装,用 exe 安装会往注册表上走

2. 尽量使用压缩包安装

1.5 安装 MySQL

1. 下载 MySQL 的 zip 压缩包,并解压

2. 把这个包放到自己的电脑环境下(最好将包名后 windows x64 去掉)

3. 配置环境变量 --》将 path 变量中添加到 MySQL 包下 bin 包的路径

4. 在 MySQL 包下,新建 MySQL 的配置文件,mysql.ini

[mysqld]
#目录一定要换成自己的
basedir=D:\Environment\mysql-5.7.31\
datadir=D:\Environment\mysql-5.7.31\data\
port=3306
skip-grant-tables

5. 启动管理员模式下的 CMD,并将路径切换至 mysql 下的 bin 目录,然后输入 mysqld –install (安装 mysql)

6. 再输入 mysqld --initialize-insecure --user=mysql 初始化数据文件

7. 然后再次启动 mysql 然后用命令 mysql –u root –p 进入 mysql 管理界面(密码可为空)

8. 进入界面后更改 root 密码

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

(最后输入 flush privileges; 刷新权限)

9. 修改 my.ini 文件删除(或注销 #)最后一句 skip-grant-tables

10. 重启 mysql 即可正常使用
net stop mysql
net start mysql

连接出现以下结果,安装成功:

1.6 安装 SQLyog

1. 无脑安装

2. 注册

3. 打开连接数据库,新建连接

4. 新建一个数据库

注意字符集、排序

每一个 sqlyog 的执行,本质对应一个 sql 语句,可以在软件的历史记录中查找

5. 新建一张表

注意引擎、字符集和核对的选择

6. 查看表

7. 往表中添加数据

1.7 连接数据库

命令行连接

mysql -uroot -p123456; -- 连接数据库
update mysql.user set authentication_string=password('123456') where user='root' and Host = 'localhost';-- 修改用户密码
flush privileges;-- 刷新权限
-----------------------------------------------------
-- 所有的语句都要以; 来结尾
show databases;-- 查看所有数据库

mysql> use school-- 切换数据库
Database changed

show tables;-- 显示数据库中的所有表
describe student;-- 显示表的详细信息

create database westos; -- 创建一个数据库

exit;--- 退出连接

-- 单行注释(SQL 的本来注释)
/**/(sql的多行注释 )

数据库 xxx 语言 CRUD 增删改查

  • DDL 数据库定义语言 (DDL:Data Definition Language)
  • DML 数据库操作语言(DML:Data Manipulation Language)
  • DQL 数据库查询语言(DQL: Data Query Language)
  • DCL 数据库控制语言 (DCL:Data Control Language)