MySQL分析与整理 — 数据库的基本操作

在这里插入图片描述

文章中所有操作均是在 MySQL 5.7 版本下进行的

当安装完了 MySQL 之后就可以进行登录等相关操作了。在这里如何登录就不演示了,非常简单“mysql -u root -p”回车输入密码即可。(一般情况下都是登录本机的 root 管理员用户)

温馨提示:退出当前用户用 exit 命令。
注意:登录 MySQL 后可以用 select version(); 命令查看 MySQL 的版本。
另外:没有登录 MySQL 也可以用 mysql -V 或者 mysql --version 也可以查看版本。

1 用户操作

1.1 添加用户

执行以下命令可以进行用户添加:

create user '用户名'@'IP地址' identified by '密码';

比如我创建了有个用户(创建了一个 Lee 用户,默认密码为 1,请注意用户名大小写):

create user 'Lee'@'%' identified by '1';

这里需要说明的一个地方,create user ‘用户名’ @’%’,@ 后面的参数代表可以登录的 IP地址,% 代表是可以在任意 IP 下登录。这样的话也可以另外的创建命令:

  • ‘用户名’@‘IP地址’:代表用户只能该 IP 下才能访问。
  • ‘用户名’@‘192.168.1.%’:代表用户只能在该 IP 段下才能访问(通配符 % 表示任意)
  • 可以直接 create user ‘用户名’ 创建用户也可以,默认 % 任意 IP。
1.2 权限授权

可以用命令查看某个用户的权限有哪些:

show grants for '用户'@'IP地址';

比如刚才新创建的用户:

show grants for 'Lee'@'%';

如果是新创建的用户它除了能登录之外,理论上是没有任何权限的(它有一个默认的 USAGE 权限,官网给出的解释是“无权限”)。我们可以通过以下命令进行权限授权:

grant 权限 on 数据库.to '用户'@'IP地址';

命令中的“权限”有哪些?

可以用户赋予全部权限,命令如下:

grant all privileges on *.* to '用户'@'IP地址';

除了 all privileges 之外还有哪些权限:

权限名解释
alteralter the table
alter routinealter or drop stored functions/procedures
createcreate new databases and tables
create routineuse create functions/procedures
create temporary tablesuse create temporary table
create viewcreate new views
create usercreate new users
deletedelete existing rows
dropdrop databases, tables, and views
eventcreate, alter, drop and execute events
executeexecute stored routines
fileread andwrite files on the server
grant optiongive to other users those privileges you possess
indexcreate or drop indexes
insertinsert data into tables
lock tablesuse lock tables (together with select privilege)
processview the plain text of currently executing queries
proxymake proxy user possible
referenceshave references on tables
reloadreload or refresh tables, logs and privileges
replication clientask where the slave or master servers are
replication slaveread binary log events from the master
selectretrieverows from table
show databasessee all databases with show databases
show viewsee views with show create view
shutdownshut down the server
superuse kill thread, set global, change master, etc
triggeruse triggers
create tablespacecreate/alter/drop tablespaces
updateupdate existing rows

命令中的“数据库.表”有哪些?

可以用户赋予全部权限,命令如下:

  • 数据库名.*,表示数据库中的所有表。
  • 数据库名.表,表示数据库中的指定某个表。
  • 数据库名.存储过程,表示数据库中的某个存储过程。
  • *.*,表示所有。
1.3 删除授权
revoke 权限 on 数据库.from '用户'@'IP地址';
revoke all privileges on *.* to '用户'@'IP地址';

以上代码很好理解了。

1.4 修改用户

修改用户?要修改用户的什么呢?给用户增加授权或者移除授权,这个在上面有介绍。还可以修改用户的密码:

set password for '用户名'@'IP地址' = password('新密码');

还可以做什么?还可以修改用户的用户名:

rename user '用户名'@'IP地址' to '新用户名'@'IP地址';
1.5 删除用户
drop user '用户名'@'IP地址';

如果创建的时候是直接 create user ‘用户名’ 创建的,可以直接 drop user ‘用户名’ 删除。如果在创建的时候是以 create user ‘用户名’@‘IP地址’ 这种形式创建的,那得需要用 drop user ‘用户名’@‘IP地址’ 删除了。

2 库的操作

登录用户进入后,我们可以通过下面命令展示当前用户下所有的数据库:

show databases;

温馨提示:可以通过 “ show create database 数据库名; “ 展示查看指定数据库的创建信息。

可以通过如下命令创建数据库:

create database 数据库名;

以上命令创建的数据库,还可以创建库的时候指定默认字符集:

create database 数据库名 default character set 字符集;

温馨提示:可以通过 “ alter database 数据库名 character set 字符集; ” 修改数据库字符集。

那删除数据库的命令(这个命令需谨慎了,删库跑路?!)如下:

drop database 数据库名;

创建完了库,我需要进入库(切换数据库)中继续进行数据操作:

use 数据库名;

结语

新建一个用户只是开始,必须赋予权限才可以使用。当然除了赋予权限肯定还有别的操作,这里就不详细分析了,后续的文章中会陆续加入。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WorkLee

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值