MySQL 常用基础知识点整理

MySQL常用基础知识点复习整理

TODO:

  • MySQL的安装配置(Window系统下)
  • 命令操作
    • 操作MySQL数据库
      • 创建数据库
      • 查看和选择数据库
      • 删除数据库
    • 常见的字段类型
      • 数值类型
      • 日期和时间类型
      • 字符串类型
    • 操作表
      • 创建数据表
      • 查看表结构
      • 修改字段名称
      • 修改字段数据类型
      • 删除字段
      • 删除表
      • 数据表添加字段(三种方式)
    • 操作数据(增删改查)
      • 插入数据记录
      • 更新数据记录
      • 删除数据记录
      • 清空表记录
    • 操作索引
    • 操作视图
    • 操作触发器
    • 事务机制

MySQL的安装配置(Window系统下)

MySQL下载地址:https://downloads.mysql.com/archives/community/

  1. 下载
    目前MySQL分为两大版本,MySQL 5.xMySQL 8.x,其中大多数使用的是 5.7 版本的 MySQL。
    5.x 版本可以直接从官网进行下载,其下载的是一个ZIP压缩包,下载完成后,直接将其解压至想要安装的文件夹即可。
  2. 配置
    完成解压安装后,需要写入配置文件,建议写在安装的文件夹中,创建 my.ini 文件,编辑其内容如下(以5.7.31为例):
    # 设置数据库端口
    port=3306
    # 设置 MySQL 的安装目录
    basedir=C:\\Program Files\\mysql-5.7.31-w
    
    可以通过 "C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe" --help --verbose 查看MySQL配置文件的优先级,在安装目录下创建MySQL配置文件可以避免安装了多个MySQL版本造成的冲突问题。
  3. 初始化
    使用 "C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe" --initialize-insecure 命令可以进行初始化。该过程会自动创建 data 目录,数据会存放在这个目录中。同时创建一些必备的数据,例如默认账户root(无密码),用于登录MySQL并通过指令操作MySQL。
    可能出现的问题: msvcr120.dll 不存在
    1. 安装 vcredisthttps://www.microsoft.com/zh-cn/download/confirmation.aspx?id=40784
    2. 安装 dirctxhttps://wwwmicrosoftcom/zh-CN/download/detailsaspx?id=35
  4. 启动
    方式一:临时启动
    >>> "C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe"
    方式二:制作服务
    可以通过以下命令制作服务:
    >>> "C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe" --install mysql57
    通过以下方式启动服务:
    >>> net start mysql57
    当想要卸载MySQL服务时,可使用下列命令:
    >>> "C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe" --remove mysql57
  5. 测试连接 MySQL
    通过 mysql.exe 可以测试连接MySQL
    >>> "C:\Program Files\mysql-5.7.31-winx64\bin\mysql.exe" -h 127.0.0.1 -P 3306 -u root -p
    该命令中,-h 表示IP地址,-P 表示端口,-u 表示用户名,-p 表示密码。在本地环境时,即连接本地数据库时,参数 -h 和参数 -P 都是可以省略的。
  6. 关于密码
    1. 设置和修改密码
      登录账户后,输入命令修改密码:
      -- 输入以下命令即可修改账户的密码
      set password = password('Your Password')
      
    2. 忘记密码
      如果忘记了MySQL账户的密码,需要进行以下的操作:
      • 修改配置文件,在 [mysqld] 节点下添加 skip-grant-tables=1
        [mysqld]
        skip-grant-tables=1
        
      • 重启 MySQL 服务,再次登录时,无需密码即可登录。
        net stop mysql57
        net start mysql57
        mysql -u root -p
        
      • 进入数据库后执行修改密码命令。
        use mysql;
        update user set authentication_string = password('New Password'),
        password_last_changed()=now() where user='root';
        
      • 退出并再次修改配置文件,注释掉 skip-grant-tables=1 。
        [mysqld]
        # skip-grant-tables=1
        
      • 再次重启,即可使用新密码登录。

命令操作

操作MySQL数据库

MySQL数据库其实就像是文件夹,MySQL数据库中的表其实就相当于数据库中的Excel文件。

  1. 创建数据库
    -- 创建数据库命令 create database [数据库名称]
    CREATE DATABASE testdb;
    -- 或者使用更多的约束来限制 create 命令
    CREATE DATABASE testdb DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    
  2. 查看当前所有的数据库:SHOW DATABASES [LIKE '数据库名'];
    -- LIKE 为可选字段, 其后可以加数据库的名称, 数据库名称用单引号包裹
    -- % 百分号表示通配符
    SHOW DATABASES LIKE 'test%';
    
    结果如下:
    +------------------+
    | Database (test%) |
    +------------------+
    | test             |
    | testdb           |
    +------------------+
    2 rows in set (0.00 sec)
    
  3. 选择数据库:USE 数据库名;
    -- 选择数据库, 相当于进入文件夹
    USE testdb;
    
  4. 删除数据库:DROP DATABASE 数据库名;
    -- 删除数据库
    DROP DATABASE testdb;
    
  5. [拓展] Python 如何使用 MySQL
    import pymysql
    # 连接MySQL
    conn = pymysql.connect(host="127.0.0.1", port=3306, user='root',
    passwd='root', charset=utf8)
    cursor = conn.cursor() # 获取游标
    # 一般来说, pymysql中, 需要查看的命令, 都使用 fetchall() 来获取返回结果
    # 而创建(新增)、删除、修改等, 需要使用 commit() 来提交命令
    # 1. 查看数据库
    cursor.execute("SHOW DATABASES")
    result = cursor.fetchall()
    # 2. 创建数据库
    cursor.execute("CREATE DATABASE testdb DEFAULT CHARSET utf8 COLLATE
    utf8_general_ci")
    conn.commit()
    # ...(其他代码不再赘述)
    # 关闭连接
    cursor.close()
    conn.close()
    

常见的字段类型

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值