mysql数据库

mysql数据库

1.1. mysql数据库介绍

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

MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL所使用的 SQL (sequel)语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。

由于其社区版的性能卓越,搭配 PHP Apache 可组成良好的开发环境

 

1.2. Mysql 数据库下载及安装

1.2.1.   【下载】

 ① 打开官网

d2b5ca33bd093634

②点击下载

d2b5ca33bd093706

③选择downloads

d2b5ca33bd093724

④点击mysql installer

d2b5ca33bd093800

⑤选择mysql服务

d2b5ca33bd093818

⑥选择download的位数。

d2b5ca33bd093834

1.2.2.   【安装】

 ① 将下载好的压缩包,如果是32位则必须下载32位的zip,64位亦然。

d2b5ca33bd093858

 ② 解压到c:\program file中,或其他的磁盘中。

d2b5ca33bd093908

 ③ window+r使用cmd控制台,管理员权限

d2b5ca33bd093923

④在mysql-5.7.11.winx64 中创建data文件夹。

⑤配置d://install/mysql-5.7.11.winx64/my_default.ini文件,首先去掉前面的“#”号,然后修改后面的值为解压路径

d2b5ca33bd093941

注意:以上的basedir和datadir是根据自定义mysql-5.7.11-winx64的解压路径填写,不要出现汉字目录即可。

⑤ 进入到数据库的bin目录

d2b5ca33bd094002

⑥ 安装 mysqld –insatll

d2b5ca33bd094020

 ⑦ 初始化 mysqld –initialize

第一步:看看data中有没有内容

d2b5ca33bd094038

   第二步:清空data文件

d2b5ca33bd094100

  第三步:初始化,执行命令:mysqld –initialize

d2b5ca33bd094119

    data中如果有一下内容则表示初始化完成

d2b5ca33bd094132

⑧ 重启mysql服务:net start mysql,关闭服务命令:net stop mysql

d2b5ca33bd094148

  ⑨ 登录:mysql -uroot -ppassword  或者 mysql -u userName -p

d2b5ca33bd094203

   在*.err寻找密码:

d2b5ca33bd094216

密码就在root@localhost的后面:

    注意:这里的密码是随机生成的,复制的时候千万注意空格。

 ⑩ 登录成功后的效果如下:

d2b5ca33bd094244

⑪ 登录mysql后,当前mysql数据不允许操作需要重置密码

d2b5ca33bd094300

重置密码:set password = password(“admin”);

d2b5ca33bd094322

【查看所有的数据库】 show databases;

  • INFORMATION_SCHEMA:提供了访问数据库元数据的方式。
    元数据是关于数据的数据,如数据库名、表名、列的数据类型或访问权限等。有些时候用于表述该信息的其他术语包括“数据词典”和“系统目录”。你可以讲INFORMATION_SCHEMA看成一个信息数据库,其中保存着关于MySQL服务器所维护的所有其他数据库的信息。在INFORMATION_SCHEMA中,有数个只读表。它们实际上是视图,而不是基本表,因此你将无法看到与之相关的任何文件。每位MySQL用户均有权访问这些表,但仅限于表中的特定行,在这类行中含有用户具有恰当访问权限的对象。
  • PERFORMANCE_SCHEMA:主要用于收集数据库服务器性能参数。MySQL用户是不能创建存储引擎为PERFORMANCE_SCHEMA的表。performance_schema提供以下功能:提供进程等待的详细信息,包括锁、互斥变量、文件信息;保存历史的事件汇总信息,为提供MySQL服务器性能做出详细的判断;对于新增和删除监控事件点都非常容易,并可以随意改变mysql服务器的监控周期,例如(CYCLE、MICROSECOND)。通过以上得到的信息,DBA能够较明细得了解性能降低可能是由于哪些瓶颈。
  • mysql:这个是mysql的核心数据库,类似于sql server中的master表,主要负责存储数据库的用户、权限设置、关键字等mysql自己需要使用的控制和管理信息。不可以删除,如果对mysql不是很了解,也不要轻易修改这个数据库里面的表信息。
  • sys (system)整个数据库的相关配置

1.2.3.   创建用户赋予权限

【创建用户】create user “user_name”@”host” identified by “pwd”;

d2b5ca33bd094542

【查看(数据)用户】select user,host from mysql.user;

d2b5ca33bd094550

【用户重命名】rename user 旧的用户名 to 新的用户名;

d2b5ca33bd094611

d2b5ca33bd094619

 注意:如果是非%的host主机再修改用户名时使用一下命令:如果修改zhangsan@localhost:

d2b5ca33bd094715

【查看用户权限】show grants for ‘userName’@’host’//注意host如果是“%”需要加引号

d2b5ca33bd094728

此时发现以上的lisi用户和zhaoliu用户并没有权限。而wangwu已经拥有了所有的特权。

【授予权限】grant (create | drop | alter | select | update | insert | delete | all) privileges on 数据库.表 to 用户@主机 ;

 [案例]

    mysql>grant all privileges on *.* to wangwu@localhost;//给wangwu用户授予对所有数据库的所有表具有所有的权限

d2b5ca33bd094802

检测用户的权限:退出当前用户,使用wangwu登录账户,查看是否可以看到用户

发现wangwu用户已经可以看到所有数据库。

d2b5ca33bd094814

注意:当*.*设置为all权限时则可以对库具备所有权限包括drop权限,但是不能给其他用户赋予权限。当test.student设置为all权限则对库具有所有权限,但不包括库的drop权限。不能给其他用户授权。

【撤销用户权限】revoke all privileges on databasename.tablename from‘username’@’host’;

d2b5ca33bd094827

   注意:撤销权限时需要撤销当前用的所有权限,不能撤销一部分权限。否则会报错误

d2b5ca33bd094836

  退出当前root用户,登录wangwu用户,查看所有数据库

d2b5ca33bd094846

  发现已经无法查看所有的数据库了。

【删除用户并取消所有的特权】drop user ‘userName’@’host’;

 [案例] 删除zhaoliu的所有权限后测试。

 ① mysql> show grants for zhaoliu@127.0.0.1; //查看zhaoliu的权限

d2b5ca33bd094900

    发现zhaoliu具有所有特权类似于root用户

② 删除用户 mysql>drop user zhaoliu@127.0.0.1;

d2b5ca33bd094908

③ 登录zhaoliu用户检测是否可以登录

d2b5ca33bd094918

   发现已经无法登录数据库了。

【赋予权限并创建用户】grant (create | drop | alter | select | update | insert | delete) privileges on 数据库.表 to 用户@主机 identified by ‘密码’;

d2b5ca33bd094929

1.2.4.   卸载数据库服务

【卸载数据库服务】mysqld –remove

d2b5ca33bd094944

© 版权声明
THE END
喜欢就支持一下吧
点赞39赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容