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 是开放源代码的
前世:瑞典 MySQL AB 公司
今身:属于 Oracle 旗下产品
体积小,速度快,总体拥有成本低,招人成本比较低,所有人必须会
中小型网站,或者大型网站、集群
安装建议:
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)