MySQL的基本使用

数据库的分类

  1、关系型数据库

    MySQL、Oracle、PostgreSQL、MariaDB、sqlite、sql server、db2

MySQL:开源免费 使用非常规范
Oracle:收费 维护成本高 大型公司可能会使用
PostgreSQL:支持二次开发
MariaDB:MySQL的替代产品(并且有自己的特性)
sqlite:小型数据库(django框架自带该数据库)

  2、非关系型数据库

    Redis、mongoDB、memcache

Redis:目前最火的缓存数据库 具有很多数据结构 功能强大
mongoDB:文档型数据库 可以用在大数据和爬虫领域 
memcache:已经被redis淘汰

  3、两类数据库的区别

    关系型数据库:拥有固定的表结构 并且表与表之间可以建立代码层面的关系

    非关系型数据库:没有固定的表结构 数据存储采用的是K:V键值对的形式

SQL与NoSQL

  数据库的服务端为了能够兼容不同类型的客户端实现数据交互,所以规定了统一的交互方式

  关系型数据库>>>:SQL语句
  非关系型数据库>>>:NoSQL语句(NoSQL有时候也表示 非关系型数据库)

软件下载

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

 

 基本使用

  一定要先启动服务端再启动客户端,前期在操作的时候最好使用管理员cmd操作

  步骤:

  1、环境变量的配置

   2、直接输入mysql启动服务端

   3、开设一个新的cmd窗口操作客户端

    登录方式

mysql    # 游客模式登陆
mysql -u用户名 -p密码  # 账号登录(本地使用)
mysql -hIP地址 -P端口号 -u用户名 -p密码  # 完整命令
 """第一次登录 root用户没有密码 直接连续回车即可"""

系统服务

  将MySQL的服务端制作成系统服务,开机自启动,关机自关闭

  1、先关闭之前的服务端

  2、查看当前计算机系统服务列表

   3、以管理员身份运行cmd并制作系统服务

    mysql --install     (这仅仅是添加到了系统服务,第一次需要手动启动)

  4、启动服务

    

     方式1:鼠标右键选择启动即可

    方式2:命令行方式启动

        net start mysql

      停止服务

        net  stop  mysql

      移除系统服务

        mysqld  --remove

密码相关

  1、针对管理员用户需要设置密码

    方式1:直接在cmd窗口内使用mysqladmin命令

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

 mysqladmin -uroot -p password 123
 mysqladmin -uroot -p123 password 666

    方式2:直接在登录状态下修改当前登录用户的密码

set password=PASSWORD('密码')

  2、忘记密码怎么解决

    2.1、关闭服务端

    2.2、以跳过授权表的方式重新启动服务端,只需要提供用户名就可以登录

 mysqld --skip-grant-tables

    2.3、以管理员身份登录

mysql -uroot -p

    2.4、修改管理员用户密码

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

    2.5、关闭服务端再正常启动

ctrl  + C
net start mysql

    2.6、使用修改之后的密码登录 

重要概念介绍

  1、库就相当于文件夹

  2、表就相当于文件夹里面的文件

  3、记录就相当于文件夹里面的文件里面的一行内容

基本SQL语句

  SQL语句的结束必须使用分号

  1、如何查看所有的数据库名称

show databases;  '''会有一个临时产生在内存的库:in...sc'''

  2、如何查看所有的表名称

use 库名;  '''切换库(类似于双击了文件夹)'''
show tables;

  3、如何查看所有的记录

select * from 表名;
如果内容较多展示补全出现错乱的情况 可以在语句后面加\G

 

 针对库的SQL语句

# 增
    create database 数据库名;
# 查
    show databases;  # 查看所有的库名
    show create database 数据库名;  # 定向查看某个库
# 改
    alter database 数据库名 charset='gbk';
# 删
     drop database 数据库名;

针对表的SQL语句

  想要操作表必须的先有库

   1、先创建库

create database db1;

   2、查看当前所在的库名

select database();

   3、切换库

use bd1;

  具体操作

# 增
    create table 表名(字段名1 字段类型1,字段2 字段类型2);
# 查
    show tables;  # 查看当前库下面所有的表名
    show create table 表名;  # 查看指定的表信息
    describe 表名;  # 查看表的具体信息(常用)  简写 desc 表名;
# 改
    alter table t1 rename ttt;  # 修改表名
    alter table ttt change id nid int;  # 修改字段名和类型
    alter table ttt modify nid char(4);  # 修改字段类型
# 删
    drop table 表名;

针对记录的操作

  得先确定库和表

# 增
    insert into 表名 values(数据,数据,数据);  '''单条数据'''
    insert into 表名 values(),(),();  '''多条数据'''
# 查
    select * from 表名;  '''查询表中所有的数据'''
# 改
    update 表名 set 字段名='新数据' where 筛选条件;
# 删
    delete from 表名 where 筛选条件;

字符编码问题

  1、查看MySQL内部默认的编码情况

    \s

  2、解决步骤

    MySQL默认的配置文件>>>:mydefault.ini

    2.1、拷贝默认的配置文件并且重新命名为my.ini

     2.2、拷贝固定的配置信息

[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

    2.3、重启MySQL服务端

 

posted @ 2022-02-17 19:05  那就凑个整吧  阅读(73)  评论(0编辑  收藏  举报