常常忘记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. VueJs(11)---vue-router(进阶2)

    vue-router(进阶2) 上篇文章讲了第一篇vue-router相关文章,文章地址:VueJs(10)---vue-router(进阶1) 一.命名路由 有时候,通过一个名称来标识一个路由显得更 ...

  2. super()方法的使用

    如果在子类中也定义了构造器,既_init_()函数,那么基类的构造器该如何调用呢? 方法一.明确指定 使用一个子类的实例去调用基类的构造器,在子类的构造器中明确的指明调用基类的构造器. class C ...

  3. spring事务机制

    一.Java动态代理 1.定义 Java动态代理是利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理. 默认情况下会采用JDK的动态代理实现AOP . 2. ...

  4. csrf攻击与防范

    CSRF(Cross Site Request Forgeries)跨网站请求伪造,也叫XSRF,通过伪装来自受信任用户的请求来攻击利用受信任网站. 与对比 xss:本网站运行了来自其它网站的脚本 c ...

  5. Swift-函数学习

    函数:函数是独立的代码块,执行特定的任务. Swift 的统一函数语法足够灵活,能表达没有参数名称的简单的 C 型函数的任何东西,本地和外部复杂 Objective-C-style 方法参数名称为每个 ...

  6. Ubuntu 命令手册

    提示:命令太多,查找的时候请用Shift+F. 目录 • 1. 前言 • 2 安装升级 • 2.1 查看软件 xxx 安装内容 • 2.2 查找软件库中的软件 • 2.3 显示系统安装包的统计信息 • ...

  7. mysql物理备份基本操作

    Ⅰ.xtrabackup介绍 xtrabackup只能备份innodb引擎的数据,不能备份表结构,percona开源的,强烈推荐最新版本(旧版本bug多) innobackupex可以备份myisam ...

  8. React Native在特赞的应用与实践

    基于React技术栈构建开发前端项目,并使用React Native开发特赞移动APP 目前正在使用Node.js开发和维护特赞服务网关,希望Node.js能够在更轻量级的微服务架构中发挥重要作用 课 ...

  9. JavaWeb学习(一) ---- HTTP以及Tomcat的安装及使用

    HTTP 一.协议 双方在交互.通讯的时候,遵循的一种规范,一种规则. 二.HTTP协议 HTTP的全名是:Hypertext Transfer Protocol(超文本传输协议),针对网络上的客户端 ...

  10. redhad安装gcc问题---解决依赖问题

    在安装gcc时需要cpp和cloog-ppl 但是在安装cpp的时候需要这个依赖:  libmpfr.so.1()(64bit) is needed by cpp-4.4.6-3.el6.x86_64 ...