zoukankan      html  css  js  c++  java
  • 初识MySQL

    一、数据库概念

    1.随意的存到了一个文件中,数据格式也是千差万别的

    2.软件开发目录规范

      规定了数据存放的位置,数据都是保存在本地的

    3.将保存数据的部分,存到一个公共的地方,所有的用户涉及数据相关,都必须来这个公共地方查找。

    二、数据库之MySQL

    本质就是一款基于网络通信的应用软件,任何基于网络通信的软件底层都是socket

    服务端

      基于socket通信

      收发消息

      sql语句(是一个公共的标准)

    客户端

      基于socket通信

      收发消息

      sql语句

    MySQL不单单支持MySQL的客户端来操作,也支持其他编程语言直接操作,python,java,c++语言都不一样。

    三、数据库管理系统

    数据库分为两种:关系型数据库和非关系型数据库

    1.关系型数据库

    数据与数据之间可以有关联和限制的

      关系型数据库通常是表结构,也就意味着你在用关系型数据库的时候第一步就是确认表结构

    包括:mysql,oracle,sqlite,db2,sql server

    2.非关系型数据库

    通常都是以k,v键值的形式 存储数据

    包括:redis,mongodb(文档型数据库  非常接近关系型的非关系型数据库) ,memcache

    MySQL其实可以把它看做是一款支持远程操作文件的软件

    库  》》》  文件夹

    表  》》》  文件

    记录  》》》  文件内一行行的数据叫做一条条的记录

    四、安装MySQL及基本使用

    前面扯了那么多,进入本文的主题,下载安装MySQL,介绍两种安装方式,一种是下载后缀是zip文件压缩包,一种是下载后缀是msi的文件直接安装。我是下载msi文件直接安装,省的后面还要自己配置。

    第一种:zip文件安装,先去官网下载:https://dev.mysql.com/downloads/mysql/5.5.html#downloads

    解压出来查看文件bin,你会发现一个mysqld.exe和mysql.exe

    服务端是:mysqld      客户端是:mysql

    以管理员身份打开cmd,在cmd中启动mysqld:

      1.先切换到bin目录下

      2.然后执行mysqld

    再打开另一个cmd,启动mysql:

    先切换到bin目录下,mysql在初始登录的时候是没有密码的,直接回车即可,mysql中的sql语句是以分号结束的,不敲分号默认你没有输入完,客户端还会让你继续输入。

    客户端登录

    mysql -h 127.0.0.1 -P 3306 -uroot -p   可以简写为   mysql -uroot -p

    如果不输入用户名和密码,默认是访客模式登录,所用到的功能很少。 

    查看所有的数据库:show databases;

    查看某个进程:tasklist |findstr 名称

    杀死进程号:taskkill  /F  /PID  进程号

    五、配置环境变量及制作系统服务

     1、制作环境变量

      将启动文件所在的路径添加到系统的环境变量中(启动文件指的是,前面的bin目录)

      注意:配置完之后一定要重新启动mysql服务端和cmd终端

    2.将mysqld制作成系统服务

      制作系统服务,你的cmd终端一定要是管理员身份   mysqld --install

    六、修改密码和破解密码

    修改密码:  以管理员身份打开cmd

    1.在没有密码的情况下:

      mysqladmin -uroot -p password 123

    因为没有密码所以在Enter password直接回车

    2.有密码的情况下

      mysqladmin -uroot -p123 password 123456       123是原来密码,123456是修改之后的密码

    破解密码

     先将已经启动的服务端停掉

    1.跳过用户名和密码的验证功能 启动服务端

      mysqld --skip-grant-tables  启动服务端  跳过授权表

    2.修改管理员用户对应的密码

      update mysql.user set password=password(123) where user='root' and host='localhost';

    3.关闭当前服务端  重新以校验用户名密码的方式启动

    4.正常以用户名密码的方式 连接mysql服务端

    七、配置文件

     s 查看mysql服务端简单配置,通常情况下配置文件的后缀都是ini结尾

    mysql 自带的配置文件不要修改,但是你可以新建一个配置文件  my.ini,mysql服务端在启动就会自动加载你的my.ini配置文件内的配置。

    修改完配置文件之后需要先将服务端停止 ,重新启动,才能生效。或者直接将服务重启。

    前面说了一大堆,我也不知道说的是对是错,我个人不建议这种安装mysql的方式,太麻烦了,所以我用第二种。

    第二种:msi文件安装      安装包和安装方法我放在网盘里面

    链接: https://pan.baidu.com/s/1cxbh8Slf8YhqsfmnHBGBPQ        密码:544w

     安装好mysql,开始对库,表,数据进行操作

    八、数据库的基本操作

     以下所有操作都在命令行中

     进入msql客户端     mysql -uroot -p    回车输入密码

    库的增删改查:

    增  create database db1;      创建库db1

    查   show databases;   查所有库

      show create database db1;   查单个db1库

     

    改  alter database db1 charset='gbk' ;  修改db1库的编号

    删  drop database db1;    删库

    表的增删改查:在创建表的时候,需要先指定库

      指定库:use 库名

      查看当前所在的库: select database();

    增   create table userinfo(id int,name char);    创建userinfo表里面有id,name字段

    查   show tables;    查看某个库下面所有的表

      show create table userinfo;

      desc userinfo;

    改   alter table userinfo modify name char(32);

    删   drop table userinfo;

    数据的增删改查:

    先创建一个库或者指定一个已经存在的库,切换到该库下,创建表,然后在操作记录。

    create table userinfo(id int,name char(32),password int);

    1.增  insert into userinfo values(1,'jason',123);    插入单条数据

         insert into userinfo values(1,'jason',123),(2,'egon',123),(3,'tank',123);   插入多条数据中间用逗号隔开

      insert into userinfo(name,pwd) values('xxx',123);    指定字段个数添加

    2.查  select * from userinfo;  查询所有字段信息

       select name from userinfo;   查询指定字段信息

       select id,name from userinfo where id=1 or name='tank';  带有筛选条件的字段信息

    3.改  update userinfo set name='kevin' where id=1;  修改数据的一个字段信息

       update userinfo set name='jason',password=123456  where id=1;   修改数据的多个字段

    4.删  delete from userinfo where id=1;   指定删除符合条件的数据

       delete from userinfo;  将表中的数据全部删除

       delete from userinfo wher id between 1 and 3;  批量删除

  • 相关阅读:
    【POJ 1655】Balancing Act
    【POJ 2631】 Roads in the North
    【洛谷 1002】 过河卒
    【洛谷 3178】树上操作
    【洛谷 1060】开心的金明
    【洛谷 2709】小B的询问
    【洛谷 1972】HH的项链
    JavaSpark-sparkSQL
    java8下spark-streaming结合kafka编程(spark 2.3 kafka 0.10)
    Kafka 使用Java实现数据的生产和消费demo
  • 原文地址:https://www.cnblogs.com/wangcuican/p/11365129.html
Copyright © 2011-2022 走看看