一 MySQL简介

  •   MySQL是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。
  •   MySQL 最流行的关系型数据库管理系统。
  •   MySQL分为企业版和社区版。

  如果仅仅是从学习角度,直接使用社区版就可以了,两者没有本质区别。只有在需要官方的商业服务的时候才会看出很大区别.
主要的区别有以下两点。
1.企业版只包含稳定之后的功能,社区版包含所有Mysql的最新功能。
  也就是说,社区版是企业版的测试版,但是,前者的功能要比后者多。
2.官方的支持服务只针对企业版,用户在使用社区版时出现任何问题,Mysql官方概不负责。
  至于管理工具,Mysql官方提供的工具都是免费的,从官方网站都可以下载到,同样可以用在社区版的Mysql上。

二 安装MySQL

安装环境:

操作系统: Windows7

MySQL版本:mysql-essential-6.0.11-alpha-winx64

三 数据库表

1.查看所有数据库、
 
   mysql> SHOW DATABASES;   //显示数据库
 
   mysql> USE abccs         //进入数据库
 
   mysql> SHOW TABLES;      //显示表
 
   mysql> DESCRIBE mytable; //显示表结构
 
   mysql> CREATE DATABASE abccs;    //创建一个数据库
 
   mysql> CREATE TABLE mytable (name VARCHAR(20), sex CHAR(1), birth DATE, birthaddr VARCHAR(20));   //创建表
 
   mysql> insert into mytable values (‘abccs’,‘f’,‘1977-07-07’,‘china’);                     //插入表数据
2.删除数据库:
 
  mysql> drop database drop_database;   //删除一个已经确定存在的数据库
 
         alter table 表名 ENGINE=存储引擎名;  //修改表的存储引擎
 
         alter table 表名 drop 属性名; //删除字段
 
         alter table 旧表名 rename to 新表名;  //修改表名
 
         alter table 表名 modify 属性名 数据类型;  //修改字段数据类型
 
         alter table 表名 change 旧属性名 新属性名 新数据类型; //修改字段名
 
         alter table 表名 drop FOREING KEY 外键别名; //删除子表外键约束
3 增加表字段:
alter table example add phone VACGAR(20); //增加无约束的字段
 
           alter table example add age INT(4) NOT NULL; //增加万增约束的字段
 
           alter table example add num INT(8) PRIMARY KEY FIRST;  //表的第一个位置增加字段
 
           alter table example add address VARCHAR(30) NOT NULL AFTER phone;  //表的指定位置之后增加字段
 
           alter table example modify name VARCHAR(20) FIRST; //把字段修改到第一位
 
           alter table example modify num INT(8) ATER phone;//把字段修改到指定字段之后

四 创建用户

语法:
 
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
 
   例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
 
               CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
 
               CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
 
               CREATE USER 'pig'@'%' IDENTIFIED BY '';
 
               CREATE USER 'pig'@'%';
 
     实例1:
 
       mysql> create user jss;
 
        这样创建的用户,可以从任意安装了mysql客户端,并能够访问目标服务器的机器上创建连接,无须密码.例如,从ip:10.0.0.99的客户端执行连接:
 
         mysql -ujss -h 172.16.1.110
 
        查看该用户:
 
         mysql> select user,host,password from user where user='jss';
 
                SELECT USER();    //显示当前用户
 
     实例2:
 
        mysql> create user jss_ps identified by 'jss';             
 
       用户连接时,必须指定密码,那就可以在创建用户时,通过指定identified by子句来设定密码
 
       用密码登陆:
 
         mysql -ujss_ps -p -h 172.16.1.110
 
      如果希望指定的用户只能从某台指定的域(domain)或主机访问,可以在创建用户时指定host,例如,指定用户只能从10.0.0.99访问
 
mysql> create user jss_ip@10.0.0.99 identified by password '123456';
 
 
 
2.       使用GRANT语句
 
语法:mysql> grant 权限1,权限2,...权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接口令';
 
权限1,权限2,...权限n代表
 
select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限
 
实例:
 
  mysql>grant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by '123';
 
给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。
 
mysql>grant all privileges on vtdc.* to joe@10.163.225.87 identified by '123';
 
给来自10.163.225.87的用户joe分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。
 
mysql>grant all privileges on *.* to joe@10.163.225.87 identified by '123';
 
给来自10.163.225.87的用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
 
mysql>grant all privileges on *.* to joe@localhost identified by '123';
 
给本机用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
 
3.       直接向mysql.user表插入记录:
 
mysql> insert into user (host,user,password) values ('%','jss_insert',password('jss'));
 
mysql>flush privileges;   //刷新系统权限表
 
4.       修改mysql用户密码方式:
 
a.       使用mysqladmin语法:mysqladmin -u用户名 -p旧密码 password 新密码
 
例如:mysqladmin -u root -p 123 password 456;
 
b.       直接修改user表的用户口令:
 
语法:update mysql.user set password=password('新密码') where User="phplamp" and Host="localhost";
 
实例:update user set password=password('54netseek') where user='root';
 
      flush privileges;
 
c.       使用SET PASSWORD语句修改密码:语法:
 
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
 
如果是当前登陆用户用SET PASSWORD = PASSWORD("newpassword");
 
实例:
 
set password for root@localhost=password('');
 
SET PASSWORD FOR name=PASSWORD('new password');
 
SET PASSWORD FOR 'pig'@'%' = PASSWORD("123456");
 
5.        删除用户和撤销权限:
 
a.       取消一个账户和其权限
 
Drop USER user;
 
drop user username@'%'
 
drop user username@localhost
 
b.       取消授权用户:
 
语法:REVOKE privilege ON databasename.tablename FROM 'username'@'host';
 
例子: REVOKE SELECT ON *.* FROM 'pig'@'%';
 
  REVOKE SELECT ON test.user FROM 'pig'@'%';
 
  revoke all on *.* from sss@localhost ;
 
  revoke all on user.* from 'admin'@'%';
 
      SHOW GRANTS FOR 'pig'@'%';     //查看授权
 
c.       删除用户:
 
语法: Delete from user where user = "user_name" and host = "host_name" ;
 
例子:delete from user where user='sss' and host='localhost';

MySQL学习笔记01-MYSQL安装的更多相关文章

  1. 吴裕雄--天生自然MySQL学习笔记:MySQL 安装

    所有平台的 MySQL 下载地址为: MySQL 下载:https://dev.mysql.com/downloads/mysql/ 注意:安装过程我们需要通过开启管理员权限来安装,否则会由于权限不足 ...

  2. 吴裕雄--天生自然MySQL学习笔记:MySQL 事务

    MySQL 事务主要用于处理操作量大,复杂度高的数据.比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成 ...

  3. 吴裕雄--天生自然MySQL学习笔记:MySQL 管理

    启动及关闭 MySQL 服务器 Windows 系统下 在 Windows 系统下,打开命令窗口(cmd),进入 MySQL 安装目录的 bin 目录. 启动: cd c:/mysql/bin mys ...

  4. 吴裕雄--天生自然MySQL学习笔记:MySQL 运算符

    要介绍 MySQL 的运算符及运算符的优先级. MySQL 主要有以下几种运算符: 算术运算符 比较运算符 逻辑运算符 位运算符 算术运算符 MySQL 支持的算术运算符包括: 在除法运算和模运算中, ...

  5. 吴裕雄--天生自然MySQL学习笔记:MySQL 导入数据

    1.mysql 命令导入 使用 mysql 命令导入语法格式为: mysql -u用户名 -p密码 < 要导入的数据库数据(runoob.sql) 实例: # mysql -uroot -p12 ...

  6. 吴裕雄--天生自然MySQL学习笔记:MySQL 处理重复数据

    有些 MySQL 数据表中可能存在重复的记录,有些情况允许重复数据的存在,但有时候我们也需要删除这些重复的数据. 防止表中出现重复数据 可以在 MySQL 数据表中设置指定的字段为 PRIMARY K ...

  7. 吴裕雄--天生自然MySQL学习笔记:MySQL 临时表

    MySQL 临时表在我们需要保存一些临时数据时是非常有用的.临时表只在当前连接可见,当关闭连接时,Mysql会自动删除表并释放所有空间. MySQL临时表只在当前连接可见,如果使用PHP脚本来创建My ...

  8. 吴裕雄--天生自然MySQL学习笔记:MySQL GROUP BY 语句

    GROUP BY 语句根据一个或多个列对结果集进行分组. 在分组的列上我们可以使用 COUNT, SUM, AVG,等函数. GROUP BY 语法 SELECT column_name, funct ...

  9. 吴裕雄--天生自然MySQL学习笔记:MySQL UNION 操作符

    MySQL UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中.多个 SELECT 语句会删除重复的数据. 语法 MySQL UNION 操作符语法格式: SELECT ...

  10. 吴裕雄--天生自然MySQL学习笔记:MySQL 连接

    使用mysql二进制方式连接 您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库. 实例 以下是从命令行中连接mysql服务器的简单实例: [root@host]# my ...

随机推荐

  1. 2014Ember带来怎样的变化?

    每隔几个月的时间,Ember的核心团队就会聚在一起讨论目前遇到的各种问题,并决定下一季度需要优先处理的各种事务. 这一次,在俄勒冈州的波特兰,大家聚在一起,商讨2014年的发展方向. 开发工具 &am ...

  2. linux输入输出重定向

    http://www.cnblogs.com/chengmo/archive/2010/10/20/1855805.html 在Linux下,当一个用户进程被创建的时候,系统会自动为该进程创建三个数据 ...

  3. Linux考试易忘命令

    这是为了考试而做的笔记 mv命令可以移动可以改名 mv a /test //移动a到test文件夹下 mv a b //把a改名为b 软链接和硬链接的创建 ln -s profile a //prof ...

  4. 2015年新版C#从入门到精通(第2版)视频教学录像【无水印版】

    <c#从入门到精通(第2版)>以零基础讲解为宗旨,用实例引导读者学习,深入浅出地介绍了c#的相关知识和实战技能.<c#从入门到精通(第2版)>第1篇[c#语言基础]主要讲解c# ...

  5. [vim]vim 在win下乱码解决

    vim在win下遇到汉字乱码早就知晓,本以为通过如下设置即可解决乱码问题 set encoding=utf-8 set fileencoding=utf-8,chinese 这样设置是可以解决源码文件 ...

  6. CUDA编程学习(三)

    我们知道一个grid包含多个block,而一个block又包含多个thread,下面将是如何进行下thread中的并行. /**** Splot a block into parallel threa ...

  7. 『.Net』微软家的女儿们

    在博客园看到了 一篇文章 <.NET4.0框架退休日期逐渐临近> 写下了这篇文章 —— 记录我和 .Net Framework 的 那些日子. 微软 家有几个 女儿. 2008年,我遇到他 ...

  8. Cocos2d-x中使用OpenGL ES2.0编写shader

    这几天在看子龙山人的关于OpenGL的文章,先依葫芦画瓢,能看到些东西,才能慢慢深入了解,当入门文章不错,但是其中遇到的一些问题,折腾了一些时间,为了方便和我一样的小白们,在这篇文章中进行写补充. O ...

  9. Bootstrap3.0学习第十六轮(进度条、媒体对象、列表组、面板)

    详情请查看http://aehyok.com/Blog/Detail/23.html 个人网站地址:aehyok.com QQ 技术群号:206058845,验证码为:aehyok 本文文章链接:ht ...

  10. jQuery应用之(三)jQuery链

    从前文的实例中,我们按到jQuery语句可以链接在一起,这不仅可以缩短代码长度,而且很多时候可以实现特殊的效果. <script type="text/javascript" ...