常常忘记mysql的一些命令行操作,甚至于说,比较复杂的sql格式记不住或忘记了,也可能根本不会考虑去记,因此,做一下汇总,当下次出现恍惚时不至于去百度挨个找,有时就是记不起来,但是只要给点药引子,立马会想起来。

一、mysql基础操作

mysql命令规则:每行sql后边都跟个分号表示一个命令语句结束

1、登录本地mysql数据库

$ mysql -u root -p
$ password

2、更改root密码

mysql>mysqladmin -uroot password 'yourpassword'

3、登录远程mysql数据库(主机地址,端口号,用户,密码)

mysql>mysql -uroot -p -h192.168.137. -P3306

4、退出mysql

mysql>exit;

5、启动mysql服务(CentOS下)

systemctl start mysqld.service

6、结束mysql服务(CentOS下)

systemctl stop mysqld.service

7、启动mysql服务(CentOS下)

systemctl restart mysqld.service

二、数据库操作

1、创建数据库

mysql>create databases 数据库名;

2、删除数据库

mysql>drop database 数据库名;

3、修改数据库编码方式

mysql>alter database 数据库名 default character set 编码方式 collate 编码方式_bin;

4、查看所有数据库

mysql>show database;

5、切换数据库

mysql>use '数据库名';

6、查看当前数据库所支持的字符集

mysql>show charset;

三、数据表操作

1、创建数据表

mysql>create table 数据表名 (column_name column_type not null,...)

2、删除数据表

mysql>drop table 数据表名;

3、清空数据表

mysql>truncate table 数据表名;

4、修改数据表名

mysql>alter table 旧表名 rename [to] 新表名;

5、查看数据表结构

mysql>describe 数据表名;

6、列出所有数据表

mysql>show tables;

四、权限控制

1、创建用户(需用root账号登录)。

 方式一:

mysql> insert into mysql.user(Host,User,Password) values("localhost","username","password");

 方式二:

CREATE USER 'username'@'host' IDENTIFIED BY 'password';
  • username:你将创建的用户名
  • host:指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以使用通配符%
  • password:该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器

2、删除用户(需用root账号登录)

mysql>DROP USER 'username'@'host';

3、授权用户并刷新系统权限表(需用root账号登录)

mysql>grant 权限 on 数据库名.数据表名 to 用户名@登录主机 identified by "密码";
mysql>flush privileges;
  • 权限:用户的操作权限,如SELECTINSERTUPDATE等,如果要授予所的权限则使用ALL
  • 数据表名:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*

4、取消用户权限

mysql>REVOKE privilege ON databasename.tablename FROM 'username'@'host';

5、修改密码(需用root账号登录)

mysql>update mysql.user set password=password('新密码') where User="test" and Host="localhost";
mysql>flush privileges;

五、表中字段增删改

1、增加字段

ALTER TABLE `数据表名`
ADD `字段一` varchar(16) NULL,
ADD `字段二` date,
ADD `字段三` varchar(16),
ADD `字段四` date;

2、删除字段

ALTER TABLE `数据表名`
DROP column `字段一`,
DROP column `字段二`;

3、修改字段

//修改一个字段的类型
ALTER TABLE `数据表名` MODIFY `字段一` date;
 
//修改一个字段的名称,此时一定要重新指定该字段的类型
ALTER TABLE `数据表名` CHANGE `旧字段名` `新字段名` date;   

4、修改字段排序

mysql>alter table 数据表名 modify 字段一 数据类型 first|after 字段二

如有更多操作,继续在此补充......

2019-1-13,望技术有成后能回来看见自己的脚步

Mysql常用基础操作(备忘录)的更多相关文章

  1. mysql常用基础操作语法(十二)~~常用数值函数【命令行模式】

    数值函数是常用函数之一,也是学习mysql必会的,常用的有如下一些: 1.ceil:返回大于某个数的最小整数值: 2.floor:和上一个相反,返回小于某个数的最大整数值: 3.round:返回某个数 ...

  2. mysql常用基础操作语法(四)--对数据的简单无条件查询及库和表查询【命令行模式】

    1.mysql简单的查询:select 字段1,字段2...  from tablename; 如果字段那里写一个*,代表查询所有的字段,等同于指定出所有的字段名,因此如果要查询所有字段的数据,一般都 ...

  3. mysql常用基础操作语法(十一)~~字符串函数【命令行模式】

    注:sql的移植性比较强,函数的移植性不强,一般为数据库软件特有,例如mysql有mysql的函数,oracle有oracle的函数. 1.concat连接字符串: 从上图中可以看出,直接使用sele ...

  4. mysql常用基础操作语法(十)~~子查询【命令行模式】

    mysql中虽然有连接查询实现多表连接查询,但是连接查询的性能很差,因此便出现了子查询. 1.理论上,子查询可以出现在查询语句的任何位置,但实际应用中多出现在from后和where后.出现在from后 ...

  5. mysql常用基础操作语法(九)~~外连接查询【命令行模式】

    1.左外连接left outer join或者left jion,outer可以省略不写,下边的右连接和全连接也一样: 左外连接的意思是,以left join左边的表中的数据为基准,即左边的表中有的必 ...

  6. mysql常用基础操作语法(八)~~多表查询合并结果和内连接查询【命令行模式】

    1.使用union和union all合并两个查询结果:select 字段名 from tablename1 union select 字段名 from tablename2: 注意这个操作必须保证两 ...

  7. mysql常用基础操作语法(七)--统计函数和分组查询【命令行模式】

    注:文中所有的...代表多个. 1.使用count统计条数:select count(字段名...) from tablename; 2.使用avg计算字段的平均值:select avg(字段名) f ...

  8. mysql常用基础操作语法(六)--对数据排序和限制结果数量的条件查询【命令行模式】

    1.使用order by对查询的结果进行排序,asc升序,desc降序: 也可以在order by后指定多个字段名和排序方式进行多级排序: 2.使用limit限制查询结果的数量: 上图中的0,代表查询 ...

  9. mysql常用基础操作语法(五)--对数据的简单条件查询【命令行模式】

    1.单条件查询:select 字段名 from tablename where 条件: 2.简单多条件查询,使用&&或者between and等: 3.is null和is not n ...

随机推荐

  1. 学习JavaScript最佳实践方法

    首先要说明的是,咱现在不是高手,最多还是一个半桶水,算是入了JS的门. 谈不上经验,都是一些教训. 这个时候有人要说,“靠,你丫半桶水,凭啥教我们”.您先别急着骂,先听我说. 你叫一个大学生去教小学数 ...

  2. Linux(二十一)Shell编程

    21.1 为什么要学习Shell编程 (1)Linux运维工程师在进行服务器集群管理时,需要编写Shell程序来进行服务器管理. (2)对于JavaEE和Python程序员来说,工作的需要,你的老大会 ...

  3. Flask入门之Jinjia模板的一些语法

    1. 变量表示 {{ argv }} 2. 赋值操作 {% set links = [ ('home',url_for('.home')), ('service',url_for('.service' ...

  4. 基于Spring的RPC通讯模型.

    一.概念和原理 RPC(remote procedure call),远程过程调用,是客户端应用和服务端之间的会话.在客户端,它所需要的一些功能并不在该应用的实现范围之内,所以应用要向提供这些功能的其 ...

  5. spring+jotm+ibatis+mysql实现JTA分布式事务

    1 环境 1.1 软件环境  spring-framework-2.5.6.SEC01-with-dependencies.zip ibatis-2.3.4 ow2-jotm-dist-2.1.4-b ...

  6. Go 自带的 http/server.go 的连接解析 与 如何结合 master-worker 并发模式,提高单机并发能力

    作者:林冠宏 / 指尖下的幽灵 掘金:https://juejin.im/user/587f0dfe128fe100570ce2d8 博客:http://www.cnblogs.com/linguan ...

  7. (细节)My SQL中主键为0和主键自排约束的关系

    开始不设置主键 表的设计如下: 如果id的位置有好几个0的话:设置主键并且自动排序时,0会从1开始递增: Insert 进去 id = 0的数据,数据会从实际的行数开始增加,和从0变化不一样: 现在主 ...

  8. elasticsearch x-pack

    elasticsearch-plugin.bat install x-pack D:\elasticsearch-5.5.3\bin>elasticsearch-plugin.bat insta ...

  9. 优雅地实现CSS Animation delay心得

    话不多说直接开讲: 1.需求: 等待元素A的动画加载完,再加载B元素的动画(下图中A为大熊猫,B为下方卡片) 先来看下最后的效果啦: 2.初始思路: 在B元素的动画属性上加上delay(延迟,使得这个 ...

  10. 你不知道的JavaScript--Item24 ES6新特性概览

    ES6新特性概览 本文基于lukehoban/es6features ,同时参考了大量博客资料,具体见文末引用. ES6(ECMAScript 6)是即将到来的新版本JavaScript语言的标准,代 ...