MySQL学习笔记(一)

  本文主要记录MySQL的学习笔记,MySQL的定义等其他基本信息不做具体说明了,主要记录MySQL的使用。
  MySQL的安装,卸载,启动,创建用户,授权,找回root密码
  **一、下载安装:**
        **1. Windows下**:
              下载地址:[https://dev.mysql.com/downloads/mysql/]()
              安装版:点击下一步,进行安装
              免安装版(压缩包):
                    解压缩
                    配置环境变量
                    win+r键 ->  输入cmd -> 进入解压后的bin目录
                    执行 mysqld --install进行安装MySQL服务
        **2. Linux下:**
             1)安装钱准备:
              a. 检查是否安装过MySQL:
                    `rpm -qa | grep mysql`、
              b. 若出现类似:
                    `mysql-libs-5.1.52-1.el6_0.1.x86_64` 
                 先进行卸载
                    `rpm -e mysql-libs-5.1.52-1.el6_0.1.x86_64          // 普通卸载`
                    `rpm -e --nodeps mysql-libs-5.1.52-1.el6_0.1.x86_64 // 强制卸载`
              c. 检查是否安装过mariadb:
                    `rpm -qa | grep mariadb`
              d. 若出现类似:
                    `mariadb-libs-5.5.56-2.el7.x86_64`
                 则可执行下面命令进行卸载:
                    `rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64`
            2)安装
              下载MySQL官网的仓库文件:
                    `cd /tmp`
                    `wget http://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm`
                    `yum localinstall mysql80-community-release-el7-1.noarch.rpm`
                    `yum install mysql-community-server -y`
                    `rpm -qi mysql-community-server.x86_64 0:8.0.16-2.el7`
               启动服务:
                    `systemctl start mysqld  // 启动MySQL服务`
                    `systemctl restart mysqld // 重启MySQL服务`
                    `systemctl stop mysqld  // 关闭MySQL服务`
                    `systemctl enbable mysqld // 设置MySQL服务自启动`
                    `systemctl status mysqld // 查看MySQL服务的启动状态`
                    `systemctl disable mysqld // 停止MySQL服务自启动`
              查看MySQL的初始密码:
                    `cat /var/log/mysqld.log | grep password`
                    ![](https://img2020.cnblogs.com/blog/2200491/202011/2200491-20201102230251472-870768467.png)
              进入mysql:
                    `mysql -uroot -p`
              修改初始密码:
                    `mysql> alter user 'root'@'localhost' identified by '新密码' `
              设置允许远程连接:
                    `mysql> update user set host='%' where user='root' `
                    `mysql> flush privileges`
          3)创建mysql用户
              `mysql> create user '用户名'@'ip' identified by '用户密码' // 若允许用户在任何地方都可以登录,ip换成 % `
              给新用户授权:
                    `mysql> grant 操作权限项 privileges on 数据库名.表名 to '用户名'@'ip'`
              操作权限项:
                    1. alter: 允许用户alter数据表
                    2. alter routine:允许用户alter或drop存储例程
                    3. create:允许用户创建表
                    4. create routine:用户用户创建存储例程
                    5. create temporary table:允许用户创建临时表
                    6. create user:允许用户使用CREATE USER, DROP USER, RENAME USER, and REVOKE ALL PRIVILEGES
                    7. create view:允许用户创建视图
                    8. delete: 允许用户使用delete
                    9. drop: 允许用户使用drop
                    10.execute:允许用户运行存储例程
                    11.index:允许用户create index和 drop index
                    12.insert:允许用户insert数据
                    13.lock table:允许用户在有select权限的表上加锁
                    14.process:运行用户使用SHOW FULL PROCESSLIST
                    15.reload:允许用户使用flush
                    16.Client:连接服务
                    17.replication slave:复制从属服务器所需
                    18.select:允许用户使用select
                    19.show databases:允许用户使用 show databases
                    20.show view:允许用户使用show create view
                    21.super:允许使用CHANGE MASTER、KILL、PURGE MASTER LOGS和SET GLOBAL SQL语句。允许mysqladmin调试命令。如果达到最大连接数,则允许进行一个额外的连接
                    22.update:允许用户使用update
                    23.usage:允许在没有任何特定权限的情况下进行连接,
                    24.references:允许用户创建外键
                    25.trigger:触发器权限
                    26.all:所有权限
              查看用户权限:
                    `show grants for '用户名'@'ip'`
                    ![](https://img2020.cnblogs.com/blog/2200491/202011/2200491-20201103105332848-812110340.png)
posted @ 2020-11-05 17:58  huige185  阅读(128)  评论(0编辑  收藏  举报