作者 | Jeskson

来源 | 达达前端小酒馆

MySQL管理,数据库管理和数据表管理,用户管理。

初始化数据库,创建数据库,查看数据库,删除数据库。

创建数据表,查看数据表,修改数据表,删除数据表。

用户管理,创建与删除用户,授予与回收用户权限,设置与更改用户密码。

数据库管理

初始化数据库

mysqld --initialize

启动数据库:

使用windows服务器管理界面启动;或使用MySQL命令启动。

mysql -u root -p

创建数据库

CREATE DATABASE语句用于创建一个新的数据库

CREATE DATABASE [db_name];
// 创建一个名为dada的数据库
create database data;

数据库创建好后,会在data目录下自动生成一个名为data的目录,该数据库的数据会存储于此目录下,MySQL是一个数据库管理系统,支持运行多个数据库。

查看数据库

SHOW DATABASES
show databases;

删除数据库

DROP DATABASE db_name;
drop database dada; // 删除dada数据库

删除数据库是一个不可逆的操作。

MySQL数据表管理

MySQL的每个数据库就相当于一个容器,里面放着很多许多表,表中的每行包含一条具体的数据关系信息,为数据记录。在data目录下,每个数据库对应一个目录。

每个数据表对应3个文件,分别为".frm","myd",".myi"类型的文件。

创建数据表:

USE 数据库名;
CREATE TABLE 表名(字段名 类型(长度),字段名 类型(长度));

查看数据表

SHOW语句和DESCRIBE语句

// 查看数据库中有哪些表
SHOW TABLES; // 此命令可以列出所有表名
show tables; // DESCRIBE
DESCRIBE 库名.表名;
使用DESCRIBE语句可以查看某一个表的具体结构,并查看组成表的各字段的信息
use mysql;
describe user;

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

修改数据表

修改数据表使用ALTER语句来实现,alter,修改表,包括修改表的名,字段的名,字段类型等表结构。

修改表名

ALTER TABLE 旧表名 RENAME 新表名;
ALTER TABLE student RENAME student1;

修改字段名:

ALTER TABLE 表名 CHANGE 旧属性名 新属性名 新数据类型;
ALTER TABLE student1 CHANGE name s_name varchar(50);

修改字段类型

ALTER TABLE 表名 MODIFY 属性名 数据类型;
ALTER TABLE student1 MODIFY name varchar(2);

增加字段:

ALTER TABLE 表名 ADD 属性名 数据类型;
ALTER TABLE student1 ADD sex char(1)

删除字段:

ALTER TABLE 表名 DROP 属性名;
ALTER TABLE student1 DROP sex;

删除数据表

USE 数据库名;
DROP 表名;

使用DROP语句可以删除数据库中的表

DROP TABLE 数据库名.表名;
USE test;
DROP TABLE student1;
DROP TABLE test.sudent1;

mysql用户管理

创建与删除用户

创建用户

CREATE USER 'username'@'host' IDENTIFIED BY 'password';

username表名要创建的用户名

host表示在哪个主机上可以登录

CREATE USER 'test1'@'localhost' IDENTIFIED BY '123';
CREATE USER 'test2'@'192.123.2.2' IDENTIFIED BY '12';
CREATE USER 'test3'@'%' IDENTIFIED BY '';
// identified

用户删除

DROP USER 'username'@'host';

删除用户的语法与创建用户的语法相同

DROP USER 'test1'@'localhost';

删除本地主机数据库用户

授予与回收用户权限

可以对用户进行授权:

GRANT privileges ON dbname.tablename To 'username'@'host';

privileges表示要授予用户的操作权限

dbname表示数据库名

tablename表示数据表名

username和host分别表示用户名和登录主机

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

表示授权用户test1在所有登录主机均对mysql库的test表拥有select和insert权限。

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

如果要授予用户对所有数据库和表的相应操作权限,可用“*”表示,如“*.*”。

回收用户权限

REVOKE privileges ON databasenamme,tablename FROM 'username'@'host';
REVOKE SELECT ON *.* FROM 'test2'@'localhost';

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

设置与更改用户密码

SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');;

username为要设置或更改密码的用户名

host为用户的登录主机

newpassword为设置或更改的密码

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

❤️ 不要忘记留下你学习的脚印 [点赞 + 收藏 + 评论]

作者Info:

【作者】:Jeskson

【原创公众号】:达达前端小酒馆。

【福利】:公众号回复 “资料” 送自学资料大礼包(进群分享,想要啥就说哈,看我有没有)!

【转载说明】:转载请说明出处,谢谢合作!~

大前端开发,定位前端开发技术栈博客,PHP后台知识点,web全栈技术领域,数据结构与算法、网络原理等通俗易懂的呈现给小伙伴。谢谢支持,承蒙厚爱!!!


若本号内容有做得不到位的地方(比如:涉及版权或其他问题),请及时联系我们进行整改即可,会在第一时间进行处理。


请点赞!因为你们的赞同/鼓励是我写作的最大动力!

欢迎关注达达的CSDN!

这是一个有质量,有态度的博客

【灵魂拷问】你真的懂得Mysql的管理和使用吗?的更多相关文章

  1. 灵魂拷问:你真的理解System.out.println()执行原理吗?

    原创/朱季谦 灵魂拷问,这位独秀同学,你会这道题吗?  请说说,"System.out.println()"原理...... 这应该是刚开始学习Java时用到最多一段代码,迄今为止 ...

  2. 工厂设计模式灵魂拷问-Java实现

    show me the code and take to me,做的出来更要说的明白 GitHub项目JavaHouse同步收录 喜欢就点个赞呗! 你的支持是我分享的动力! 引入 我们经常听到工厂模式 ...

  3. [MySQL Reference Manual] 5 MySQL 服务管理

    5. MySQL 服务管理 5. MySQL 服务管理 5.1 The Mysql Server 5.2 Mysql 服务日志 5.2.1 选择General query log和slow query ...

  4. MySQL日志管理

    MySQL日志管理 2013年09月26日 ⁄ MySQL ⁄ 共 14266字 ⁄ 评论数 ⁄ 被围观 , views+ 一.日志类型: MySQL有几个不同的日志文件,可以帮助你找出mysqld内 ...

  5. MySQL 日志管理详解

    大纲 一.日志分类 二.日志详解 注:MySQL版本,Mysql-5.5.32(不同版本的mysql变量有所不同) 一.日志分类 错误日志 查询日志 慢查询日志 二进制日志 中继日志 事务日志 滚动日 ...

  6. mysql监控管理工具--innotop

    https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/innotop/innotop-1.9. ...

  7. UCloud EIP 你真的懂得如何使用么? - SegmentFault

    UCloud EIP 你真的懂得如何使用么? - SegmentFault UCloud EIP 你真的懂得如何使用么?

  8. MySQL账户管理

    body { font-family: Helvetica, arial, sans-serif; font-size: 14px; line-height: 1.6; padding-top: 10 ...

  9. MySQL(十六)之MySQL用户管理

    一.MySQL用户管理概述 MySQL是一个多用户的数据库,MYSQL的用户可以分为两大类: 超级管理员用户(root),拥有全部权限 普通用户,由root创建,普通用户只拥有root所分配的权限 二 ...

随机推荐

  1. 学习笔记30_ORM框架

    *在以往DAL层中,操作数据库使用DataTable,如果使得数据表DataTable转为List<>的话,写错属性名,在编译阶段是查不出来的,而ORM框架能解决此问题. *ORM是指面向 ...

  2. 【原创】(十)Linux内存管理 - zoned page frame allocator - 5

    背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本: ...

  3. 【51nod 1251】 Fox序列的数量(以及带限制插板法讲解)

    为什么网上没有篇详细的题解[雾 可能各位聚聚觉得这道题太简单了吧 /kk 题意 首先题目是求满足条件的序列个数,条件为:出现次数最多的数仅有一个 分析 感谢 刚睡醒的 JZ姐姐在咱写题解忽然陷入自闭的 ...

  4. ApplicationContext refresh 过程及一些重要的 processor 解析

    回顾 上文 其实我们已经实现了一个简单的 BeanFactory 它具的功能有 注册 Bean 到容器,通过限定名获取 Bean 可以拦截 Bean 初始化前后的处理 可以在 Bean 属性注入后和即 ...

  5. windows下离线安装mysql8.0服务(支持多个安装,端口不同就可以)

      1.官网下载 mysql文件.官网下载链接:https://dev.mysql.com/downloads/mysql/ 选择mysql下载的系统版本. 此处可以下载MSI安装包,图简单的朋友可以 ...

  6. 星空 题意转化,差分,状压DP

    好题(爆搜和puts("2")一个分(雾)),不得不说思维真的强. 首先发现区间翻转很难受,考虑用差分(异或满足可逆性),注意是从0到n+1 然后就转化题意,操作改为选取距离为L的 ...

  7. day1-习题

    # 1.使用while循环输入 1 2 3 4 5 6 8 9 10 count = 1 while count<11 : #使用while语句循环输入123...10 if count == ...

  8. ArcGIS API For Javascript :如何解决跨网不能正常获取依赖项的问题?

    一.前言 政企项目通常会在自组网以及保密网运行,有些单位甚至会有两个物理隔绝的网络存在.通常情况下我们会在两个网络中部署相同的地图服务和依赖项.但是也有其中一个网络密级很高没有服务器资源,不能单独部署 ...

  9. linux文件时间

    Linux 查看文件修改时间(精确到秒)(简单) ls --full-time 查看文件时间戳命令:stat test.txt linux 下查看文件修改时间 等(详细) 查看文件时间戳命令:stat ...

  10. 使用 Rsync 从 Windows 同步数据到 Linux

    为什么要使用 rsync 从 Windows 到 linux 进行同步? 我们经常会面临这种的情况,项目使用 Windows 开发,最终部署在 Linux 上,但有时想要进行测试.维护.迭代版本时操作 ...