Mysql

一、数据库是什么?

字面意思:存数据的仓库

二、为啥使用数据库?(*****)

Excel的缺点:

1.管理不了大量的数据(10w量级以上的数据)

2.不能并发操作同一个数据表格

3.数据库支持一些高级的操作:分组,连表等

三、数据库的分类(*****)

1.关系型数据库

对每一列的数据类型都有约束,ID(整型)name(字符串)等

MySQL,SqlServer,oracle,sqlite,maridb等

MySQL是用的比较多,主要是免费

SqlServer微软的,只有大学、政府用的比较多

oracle:甲骨文的,收费,金融公司(安全度高)、阿里

sqlite:小型的文件数据库,自己玩一玩

maridb:和MySQL一个人开发的

2.非关系型数据库

memcache没有解决

mongodb,文档型数据库,用的不太多,解决了掉电内存数据丢失的问题

Redis:微博使用,解决了掉电内存数据丢失的问题

用{“key”:‘value’}进行存储数据

3.关系型与非关系型区别:

关系型数据库,把数据存在硬盘中

非关系型,把数据存在内存中(速度快)

四、数据库MySQL的架构

类似于socket的客户端和服务端

流程:

1.MySQL服务端先启动,监听在某一个特定的端口(3306)

2.MySQL客户端连接服务端

3.MySQL客户端就可以发送操作命令,去操作服务端的数据。

五、数据库的安装

windows 安装:去官网找资料(学习的方法)安装,

MySQL软件官方下载地址(https://dev.mysql.com/downloads/mysql/),个人感觉下载压缩包版比下载安装包办的要好,因为安装包版的默认安装路径为系统盘,整个数据库有1.8G左右,太占系统盘存储。

1.安装步骤:

1.解压

想将数据库安装到哪个盘就将数据库解压到哪个盘(独立的一个文件夹)

2.添加环境变量

【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》(win10直接搜环境变量就可以到这一步)【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【将MySQL的bin目录路径追加到变值值中,用 ; 分割】

bin下面的mysql是客户端,mysqld是服务端

3.初始化

在cmd界面输入mysqld --initialize-insecure对数据库进行初始化。

4.启动MySQL服务

输入:mysqld

5.启动mysql客户端并连接到mysql服务端

输入指令:mysql -u root -p

6.将mysql服务制作成windows服务

制作MySQL的Windows服务,在终端执行此命令:

"c:\mysql-5.7.16-winx64\bin\mysqld" --install

移除MySQL的Windows服务,在终端执行此命令:

"c:\mysql-5.7.16-winx64\bin\mysqld" --remove

注意:引号内的路径是bin目录下的mysqld路径必须是绝对路径。

2.启动mysqd的两种方式:

1.启动服务cmd端输入 net start mysql

停止服务cmd端输入net stop mysql

2.如下图,在计算机的计算机管理里面手动进行启动、停止、重启服务端!

以上是5.6、5.7版本安装的全部过程。

3.密码的修改操作

在上面的流程走完之后软件的root权限密码默认为空,第一次修改密码时输入下面指令(在cmd窗口,管理员身份运行cmd,在cmd下输入,不是在mysql下输入):

mysqladmin -uroot -p password "要设置的密码"

第二次以及以后修改密码则输入下面的指令

mysqladmin -uroot -p"原密码" password "新密码"

4.如果密码忘掉了,修改密码方法:

1)5.6版本mysql修改密码方法

1 关闭正在运行的MySQL服务。
2 打开DOS窗口,转到mysql\bin目录。
3 输入mysqld --skip-grant-tables 回车。–skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。
4 再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。
5 输入mysql回车,如果成功,将出现MySQL提示符 >。
连接权限数据库: use mysql; 。
6 改密码:update user set password=password(“123”) where user=“root”;(别忘了最后加分号) 。
7 刷新权限(必须步骤):flush privileges; 。
8 退出 quit。
注销系统,再进入,使用用户名root和刚才设置的新密码123登录。

2)5.7版本

1 关闭mysqld的服务
2 在cmd中执行:mysqld --skip-grant-tables =》 不用密码就可以登录,绕过密码验证的权限
3 在cmd中执行:mysql =》 mysql -uroot -p
4 执行如下sql指令:
(特别注意,此处5.7版本与5.6不一样)update mysql.user set authentication_string=password('') where user = 'root';

5 flush privileges; (一定要操作)
6 重新启动mysql服务

六、初识Mysql

SQL指令

1)操作数据库

查看当前用户: select user();

数据库的命名规范:

可由字母、数字、下划线、@、#、$组成,区分大小写,不能使用关键字如create 、select等,不能单独使用数字,最长不能超过128位

增 create database 数据库名称 charset utf8;

删 drop database 数据库名称;

改:先删除再添加,如果数据库有数据的话,直接drop会导致数据库中的数据丢失,在线上环境,不能够直接删除数据,在删除数据之前需要先进行备份

查 show databases;

使用数据库 use 数据库名;

确定当前使用的数据库: select database();

查看所有用户权限

select * from mysql.user\G;

查看某个用户的权限

select * from mysql.db where user='用户名'\G;
用户信息存放在一个名为mysql.user的表里

select user,password,host from mysql.user;

MySQL数据库1初识MySQL的更多相关文章

  1. 通过JSP网页连接MySQL数据库,从MySQL数据库中读出一张表并显示在JSP网页中

    1.安装所需软件 ①安装java和tomcat,建立JSP网页最基础的软件②安装MySQL数据库(下载地址:https://www.mysql.com/)③安装Navicat Premium来查看数据 ...

  2. 重新学习MySQL数据库10:MySQL里的那些日志们

    重新学习MySQL数据库10:MySQL里的那些日志们 同大多数关系型数据库一样,日志文件是MySQL数据库的重要组成部分.MySQL有几种不同的日志文件,通常包括错误日志文件,二进制日志,通用日志, ...

  3. 重新学习MySQL数据库8:MySQL的事务隔离级别实战

    重新学习Mysql数据库8:MySQL的事务隔离级别实战 在Mysql中,事务主要有四种隔离级别,今天我们主要是通过示例来比较下,四种隔离级别实际在应用中,会出现什么样的对应现象. Read unco ...

  4. 重新学习MySQL数据库3:Mysql存储引擎与数据存储原理

    重新学习Mysql数据库3:Mysql存储引擎与数据存储原理 数据库的定义 很多开发者在最开始时其实都对数据库有一个比较模糊的认识,觉得数据库就是一堆数据的集合,但是实际却比这复杂的多,数据库领域中有 ...

  5. 重新学习MySQL数据库4:Mysql索引实现原理

    重新学习Mysql数据库4:Mysql索引实现原理 MySQL索引类型 (https://www.cnblogs.com/luyucheng/p/6289714.html) 一.简介 MySQL目前主 ...

  6. 初识数据库、初识MySQL

    一.为什么要用数据库 # 1.将文件和程序存在一台机器上是很不合理的. # 2.操作文件是一件很麻烦的事. 所以就出现了一个新的概念 —— 数据库 你可以理解为 数据库 是一个可以在一台机器上独立工作 ...

  7. MySQL数据库2 - 登录MySQL及数据库管理

    一. 登录数据库 1.使用命令窗口登录MySQL 启动Mysql服务 -> 打开命令窗口 -> 输入登录密码 具体步骤:开始菜单 - 控制面板 - 管理工具 - 服务 - Mysql56( ...

  8. mysql 数据库问题com.mysql.jdbc.exceptions.jdbc4.CommunicationsException

    本文转自:http://blog.csdn.net/zmzsoftware/article/details/6835604 MySQL第二天早上第一次连接超时报错,解决方法com.mysql.jdbc ...

  9. c++连接mysql数据库(使用mysql api方式,环境VS2013+MYSQL5.6)

    转载请注明出处,原文地址http://www.cnblogs.com/zenki-kong/p/4382657.html 刚开始写博客,博主还只是个大三汪,学艺不精,如有错误还请前辈指出(>^ω ...

随机推荐

  1. 使用 circleci 自动部署 vuepress 到 github

    概述 今天我想把博客什么的搬到 github 的 vuepress 上面.但是每次提交 md 文件需要手动打包然后再提交到 github 的 gh-pages,非常麻烦.所以我去研究了一下用 circ ...

  2. 阶段3 1.Mybatis_10.JNDI扩展知识_1 补充-JNDI概述和原理

    H:\BaiDu\黑马传智JavaEE57期 2019最新基础+就业+在职加薪\讲义+笔记+资料\主流框架\31.会员版(2.0)-就业课(2.0)-Mybatis\mybatis\mybatis_d ...

  3. RESR API (一)之Requests

    Requests 如果您正在做基于REST的Web服务,您应该忽略request.POST. - Malcom Tredinnick,Django开发团队 REST框架的Request类扩展了标准的H ...

  4. ABAP基本数据类型

    ABAP 程序中共包含8种基本数据类型: 数据类型名称 描述 属  性 C Character Text(字符类型) 默认长度=1,默认值=blank,最大长度无限制 N Numeric Text(数 ...

  5. numpy的linalg.norm()函数求范数

    函数签名:def norm(x, ord=None, axis=None, keepdims=False) 其中ord参数表示求什么类型的范数,具体参见下表 下面是用代码对一个列表求上面的范数 imp ...

  6. Python示例-Logging

    logging.ini日志配置文件内容示例: [loggers] keys=root,demo [handlers] keys=consoleHandler,timedRotatingFileHand ...

  7. angulart 常用

    angular: 使用 echarts npm install echarts --save // 安装declare const echarts: any; // 引入https://www.ech ...

  8. [Web 前端] 026 jQuery 初探

    目录 1. jQuery 简介 2. jQuery 的简单操作 2.1 jQuery 选择器 2.1.1 简介 2.1.2 基础选择器 2.2 过滤获取 2.3 父子关系获取 3. jQuery 元素 ...

  9. Javascript原型介绍

    原型及原型链 原型基础概念 function Person () { this.name = 'John'; } var person = new Person(); Person.prototype ...

  10. OC中数组排序的3种方法

    总结OC中数组排序3种方法:sortedArrayUsingSelector:;sortedArrayUsingComparator:;sortedArrayUsingDescriptors: 大体上 ...