MySQl安装与学习,内附SQlyog

本文详细介绍了MySQL的安装过程,包括安装建议和注意事项,以及数据库管理工具SQLyog的使用。文章深入浅出地讲解了数据库的基本概念、分类,特别是MySQL的特点。通过目录结构,读者可以了解到从数据库创建、数据类型、表的操作到数据管理、查询语言、事务处理、索引、权限管理和备份等全面的内容。此外,还涉及到了JDBC的基础知识和数据库设计的原则,为初学者提供了丰富的学习资料。
摘要由CSDN通过智能技术生成

1、初识MySQL

JavaEE:企业级Java开发 web

前端(页面:展示数据)

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

数据库(存数据)

只会写代码,学好数据库,基本混饭吃!

操作系统,数据结构与算法!当一个不错的程序员

离散数学、数字电路、体系结构、编译原理 + 实战经验,高级程序员

1.1、为什么要学习数据库

  1. 岗位要求
  2. 现在的大数据时代
  3. 被迫需求:存数据
  4. 数据库是所有软件中最核心的存在 DBA

1.2、什么是数据库

数据库(DB,DataBase)

概念:数据仓库软件,安装在操作系统之上!SQL可以存储大量的数据,500万!

作用:存数据、管理数据

1.3、数据库分类

关系型数据库:(SQL)

  • MySQL、Oracle、SqlSever、DB2、SQLite
  • 通过表和表之间,行和列之间的关系进行数据的存储

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

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

DBMS(数据库管理系统):

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

1.4、MySQL简介

在这里插入图片描述

安装建议:

  1. 尽量不使用exe,会在注册表里面安装
  2. 尽可能使用压缩包安装

1.5、安装MySQL

  1. 官网下载解压安装地址

  2. 将解压文件放在自己的环境目录下

  3. 配置环境变量

    创建my.ini文件

  4. 新建MySQL配置文件 my.ini文件

  5. =======配置文件中全部属性=================
    [mysql]
    # 设置mysql客户端默认字符集
    default-character-set=utf8 
    [mysqld]
    #设置3306端口
    port = 3306 
    # 设置mysql的安装目录
    basedir=E:\MySQL5.7.13\mysql-5.7.13-winx64
    # 设置mysql数据库的数据的存放目录
    datadir=E:\MySQL5.7.13\mysql-5.7.13-winx64\data
    # 允许最大连接数
    max_connections=200
    # 服务端使用的字符集默认为8比特编码的latin1字符集
    character-set-server=utf8
    # 创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB
    # 安装好后, 免密码进入mysql
    skip-grant-tables
    
    //基础目录,即必要属性
    basedir=D:\Program Files\mysql-5.7\
    //这个目录会自动生成
    datadir=D:\Program Files\mysql-5.7\data\
    //端口号
    port=3306
    //跳过密码验证
    skip-grant-tables
    
  6. 管理员模式下运行CMD,运行所有的命令

  7. 安装MySQL的服务(进入bin目录下)

    //安装mysql
    mysqld -install 
    
  8. 初始化数据库文件启动MySQL,出现data目录

    //安装成功后,初始化数据文件
    mysqld --initialize-insecure --user=mysql
    
  9. 启动MySQL,进去修改密码(注意:若是显示没有这个命令则需要新打开一个CMD)

    net start mysql
    

    注意:进入管理界面密码界面这一步,有可能会报错,若是报错,则注释掉my.ini文件中的skip-grant-tables语句,p后不要带空格,直接跟密码;更新完密码要记得刷新权限

    //进入mysql管理界面
    mysql -u root -p
    
    ====以下修改密码方式需要注意,选择一种就行====
    //修改密码
    update mysql.user set password=password(’新密码’) where user=’root’;
    //mysql8设置密码,SQLyog可能会无法链接,MySQL加密方式改变了
    alter user 'root'@'localhost' identified by '密码';
    //修改密码,使用这个代码则可以正常链接 
    alter user "root" @" localhost" identified with mysql_native_password by "密码";
    
    //刷新权限
    flush privileges;
    
  10. 进入MySQL,通过命令行

    //停止MySQL
    net stop mysql
    //启动MySQL
    net start mysql
    

    注意:启动MySQL由两种方式,一种mysql -u root -p启动,然后根据提示输入密码,第二种mysql -u root -p密码,密码和p之间没有空格

  11. 注释掉ini中的跳过密码

  12. 重启MySQL,测试链接
    在这里插入图片描述

注意:

sc delete mysql,清空服务 这个命令可以将MySQL服务干掉,干掉之后可以重装

1.6、SQLyog

SQLyog 下载网盘分享,直接安装即可
链接:https://pan.baidu.com/s/1ndEXZBmcQasoVYYFYADD6A?pwd=1234
提取码:1234
在这里插入图片描述

保证中文不乱码:
在这里插入图片描述

每一个SQLyog的操作,本质就是对应了一个SQL语句,可以在软件的历史记录中查看

1.6.1、新建一个表

在这里插入图片描述

1.7、链接数据库

命令行链接:

mysql -uroot -p888888  --链接数据库

update mysql.user set authentication_string=password('888888') where user='root' and Host='localhost';--修改用户密码
flush privileges;--刷新权限

-------------------------------
----所有的语句都是用;结尾---------
show databases;--查看所有的数据库

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

mysql> show tables;----查看数据库中所有的表
+------------------+
| Tables_in_school |
+------------------+
| student          |
+------------------+
1 row in set (0.00 sec)

mysql> describe student;------查看表中的所有信息
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int         | NO   | PRI | NULL    |       |
| name  | varchar(60) | NO   |     | NULL    |       |
| age   | int         | NO   |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

mysql> create database westos;-----创建一个数据库
Query OK, 1 row affected (0.02 sec)

exit;---退出链接

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

数据库xx语言 CRUD 增删改查 CRUD程序员 CV程序员 API程序员(业务)

DDL:数据库定义语言

DML:数据库操作语言

DQL:数据库查询语言

DCL:数据库控制语言

2、操作数据库

操作数据库>操作数据库中的表>操作数据库中表的数据

MySQL关键字不区分大小写

2.1、操作数据库(了解)

2.1.1、创建数据库

CREATE DATABASE [IF NOT EXISTS] school;

2.1.2、删除数据库

DROP DATABASE [IF EXISTS] swith

2.1.3、使用数据库

--tab键上面,如果表名或者字段名是一个特殊字符,就需要带``符号
USE `school`

2.1.4、查看数据库

SHOW DATABASES ---查看所有的数据库

学习思路:

  1. 对照SQyog可视化历史记录查看SQL
  2. 固定的语法或关键字必须要记住

2.2、数据库的数据类型

2.2.1、数值

  • tinyint 十分小的数据 1个字节
  • smallint 较小的数据 2个字节
  • mediumint 中等大小的数据 3个字节
  • int 标准的整数 4个字节(常用)
  • bigint 较大的数据 8个字节
  • float 单精度浮点数 4个字节
  • double 双精度浮点数 8个字节
  • decimal 字符串形式的浮点数,金融计算的时候一般会使用

2.2.2、字符串

  • char 字符串固定大小 0~255
  • varchar 可变字符串 0~65535 常用的变量
  • tinytext 微型文本 2^8-1
  • text 文本串 2^16-1 保存大文本

2.2.3、时间、日期

  • date YYYY-MM-DD,日期
  • time HH-mm-ss 时间日期
  • datetime YYYY-MM-DD HH-mm-ss 最常用的最常用的时间格式
  • timestamp 时间戳 1970年1月1日到现在的毫秒数! 全球统一
  • year 年份表示

2.2.4、NULL

  • 没有值或者未知
  • 注意:不要使用null进行运算,运算结果一定为null

2.3、数据库的字段属性(重点)

Unsigned:

  • 无符号的整数
  • 声明了这一列,不能声明为负数

zerofill:

  • 0填充
  • 不足的位数使用0来填充

自增:

  • 通常理解为自增,自动在上一条记录的基础上 +1(默认)
  • 通常用来设置唯一的主键,必须是整数类型
  • 可以自定义设置主键的起始值和步长

非空:

  • 假设设置为not null,那么不给其赋值也会报错
  • null,如果不填写值,默认就是null

默认:

  • 设置默认的值

拓展:

/*每一个表,都必须存在一下五个字段!未来做项目用,表示一个记录存在的意义
id			主键
`version`	乐观锁
is_delete	伪删除
gmt_create	创建时间
gmt_update	修改时间
*/

2.4、创建数据库表

#目标:创建一个school数据库
#创建学生表(列,字段) 使用SQL创建
#学生int 登录密码varchar
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值