mysql 介绍

MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 Web 应用方面,MySQL 是最好的 RDBMS (Relational Database Management System,关系型数据库管理系统) 应用软件之一。

MySQL 拥有体积小、速度快、性能高、使用简单等优点,同时 MySQL 开放源代码,使其具有使用门槛低的特点。

另外也被业界所称的软件组合 " LAMP " ,其中 Linux 作为操作系统,Apache 作为Web 服务器,MySQL 作为数据库,PHP 作为服务端脚本解释器,由于它们都是免费或开源软件,可以使用这种方式免费搭建一个稳定的网站系统。


在这里插入图片描述


文章目录

一、MySQL 的安装与配置;


传送门:https://blog.csdn.net/qq_46921028/article/details/115038642

二、MySQL 图形化管理工具;


  • Navicat
  • SQLyog
  • DataGrip

三、MySQL 管理;


1、MySQL 数据库管理;


1.1、创建数据库;
CREATE DATABASE 数据库名 ; 

在这里插入图片描述
在这里插入图片描述

在数据库创建好后,MySQL 的 data 目录下会自动生成一个与数据库同名的目录,然后数据库中的数据会存储在这个目录下;
在这里插入图片描述

MySQL 是一个数据库管理系统,支持运行多个数据库,因此,我们可以创建多个数据库。

1.2、查看数据库;

查看MySQL中有哪些数据库,语法格式如下:

SHOW DATABASE; 

在这里插入图片描述

1.3、删除数据库;
DROP DATABASE 数据库名; 

在这里插入图片描述
在这里插入图片描述
注意:删库是一个不可逆的操作,一定要确认其内部所有数据均可删除,要慎重执行此命令。

2、MySQL 数据表管理;


2.1、创建数据表;
USE 数据库名;

CREATE TABLE 表名(字段名 类型(长度),字段名 类型(长度)); 

在这里插入图片描述
创建数据表语句要明确数据表的结构、字段名称、类型及长度等信息。

2.2、查看数据表;

查看数据库中有那些表:

SHOW TABLES; 

在这里插入图片描述

查看表结构:

DESCRIBE 库名.表名; 

在这里插入图片描述

使用 DESCRIBE 语句可以查看表的字段名称、类型、长度、是否非空、是否有主键、默认值以及备注等信息。

2.3、修改数据表;
2.3.1、修改表名;
ALTER TABLE 旧表名 RENAME 新表名; 

在这里插入图片描述
在这里插入图片描述

2.3.2、修改字段名;
ALTER TABLE 表名 CHANGE 旧属性名 新属性名 新数据类型; 

在这里插入图片描述
在这里插入图片描述

2.3.3、修改字段类型;
ALTER TABLE 表名 MODIFY 属性名 数据类型; 

在这里插入图片描述
在这里插入图片描述

2.3.4、增加字段;
ALTER TABLE 表名 ADD 属性名 数据类型; 

在这里插入图片描述
在这里插入图片描述

2.3.5、删除字段;
ALTER TABLE 表名 DROP 属性名; 

在这里插入图片描述
在这里插入图片描述

2.4、删除数据表;
DROP 表名; 

在这里插入图片描述

2.5、用户管理;
2.5.1、创建用户;
CREATE USER 'username'@'host' IDENTIFIED BY 'password' 

其中 username 表示要创建的用户名,host 指定该用户在哪个主机上可以登录,如果该用户是本地用户 则可以使用 localhost,如果想让该用户从任意远程主机登录,则可以是使用通配符 %,password 表示该用户的登录密码,密码可以为空,如果密码为空,则该用户可以不需要密码登录服务器;

(1) 在本地主机数据库创建用户 test1,密码为123456;

CREATE USER 'test1'@'localhost' IDENTIFIED BY '123456'; 

在这里插入图片描述
在这里插入图片描述

(2) 在 ip为192.168.1.2 的数据库创建用户 test2,密码为123456;

CREATE USER 'test2'@'192.168.1.2' IDENTIFIED BY '123456'; 

(3) 创建用户test3,可以远程无密登录;

CREATE USER 'test3'@'%' IDENTIFIED BY ''; 

(4)刷新权限;

flush privileges; 
2.5.2、显示所有用户;

(1) 查询用户表;

SELECT User, Host FROM mysql.user; 

在这里插入图片描述
在Mysql中其实有一个内置名为 mysql 的数据库,这个数据库中存储的是MySQL 的一些数据,比如用户、权限信息、存储过程等,我们可以通过 SELECT 语句查询一些信息;

(2) 显示所有的用户(不重复);

SELECT DISTINCT User FROM mysql.user; 

在这里插入图片描述

2.5.3、删除用户;
DROP USER 'username'@'host'; 

在这里插入图片描述
在这里插入图片描述
到这里可以看到,名为 test1 的用户已被删掉!

2.5.4、授权与收回用户权限;

(1)授权用户权限;


使用 GRANT语句可以对用户进行授权,语法格式如下:

GRANT privileges ON dbname.tablename TO 'username'@'host'; 
  • privileges 表示要授予用户的操作权限,如: SELECT、INSERT、UPDATE等操作,如果要授予用户所有的权限则使用 ALL即可;
  • dbname 表示数据库名;
  • tablename 表示数据表名,如果要授予用户对所有数据库和表的相应操作权限,则可用 * 表示,如:*.*
  • usernamehost分别表示 用户名 和 登录主机 ;

例1: 授权用户 test1 在所有登录主机均对 mysql_study库test表 拥有SELECT、INSERT 权限;

GRANT SELECT,INSERT ON mysql_study.test TO 'test1'@'%'; 

在这里插入图片描述
在这里插入图片描述

例2:授权用户 test2本地主机数据库所有库所有表 拥有所有权限);

GRANT ALL ON *.* TO 'test2'@'localhost'; 

(2)回收用户权限;


使用REVOKE语句可以对权限进行回收,语法与授权用户权限相同:

REVOKE privileges ON dbname.tablename FROM 'username'@'host'; 

例如:回收用户test2在本地主机数据库对所有库的所有表的SELECT权限;

REVOKE SELECT ON *.* FROM 'test2'@'localhost'; 
2.5.5、设置与更改用户密码;

若在创建用户时未指定密码,或者由于某些原因修改密码,可以使用MySQL提供的密码设置与更改语句,语法格式如下:

SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword'); 
  • username表示要设置或更改密码的用户;
  • host指定该用户的登录主机;

例如:把本地主机数据库 用户 test1 的密码修改为 helloworld;

SET PASSWORD FOR 'test1'@'localhost' = PASSWORD('helloworld'); 

在这里插入图片描述

四、SQL 基本语法;


五、索引、分区与视图;


本文转自 https://www.cnblogs.com/m987/p/14720466.html,如有侵权,请联系删除。

原文地址:https://www.cnblogs.com/hustshu/p/14815239.html