【mysql】工作中mysql常用命令及语句
1.查看mysql版本号
MySQL [release_test_oa]> select version();
+------------+
| version() |
+------------+
| 5.6.27-log |
+------------+
1 row in set (0.00 sec)
或者
MySQL [release_test_oa]> status;
--------------
mysql Ver 15.1 Distrib 5.5.44-MariaDB, for Linux (x86_64) using readline 5.1 Connection id: 1044533
Current database: release_test_oa
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server: MySQL
Server version: 5.6.27-log Source distribution
2.连接本地mysql
mysql -uroot -p 或者 mysql -h127.0.0.1 -uroot -p
连接远程mysql
mysql -u root -p -h 192.168.1.2
3.导出本地数据库某张表(比如导出数据中的USERS表) 回车后要输入数据库密码
mysqldump databases -u root -p --tables USERS>/usr/tmp/users.sql
4.导出远程数据库某张表(USERS表) 回车后要输入数据库密码
mysqldump -h192.168.79.206 -p3306 databases -u root -p --tables USERS>/usr/tmp/users.sql
5.表名重命名
RENAME TABLE USERS TO USERS_BAK
6.查看表索引信息
show index from tables; 或者 show keys from tables; 两个命令输出都一样
7.复制表命令
原表是vistor
create table vistor_two like vistor; 这个会把原表的索引信息带过去, 用上面查看索引命令可以查看的到 ,但只是复制表结构; create table vistor_three select * from vistor; 这个不会把原表的索引信息带过去,会把数据复制过去; (最好不要用这个,之前工作中因为表没自增主键导致程序插入的数据主键字段id值都为0)
8.新增字段
alter table tablename add new_ziduan int(4) default '0';
9.删除字段
alter table tablename drop column;
10.删除表数据
delete from tablename ; 或者 truncate tablename ; 第一个删除会有删除记录,误删可以通过日志恢复记录;truncate是删除了旧表,重新创建了这个表,之前所有的状态都相当于新表;
11.复制表部分字段数据到另一张表 (同字段类型)
insert into tables_new (ID,BYNAME,STATUS) select ID,BYNAME,STATUS from tables_old;
12.查看表字段
show columns from tablename;
13.查看表状态
show table status; 显示所有的表
show table status from database_name like 'task%'; 显示数据库database_name中表名以task开头的表。
14.查看表有多少个字段
select count(*) from information_schema.COLUMNS where TABLE_SCHEMA='数据库名' and table_name='表名'
15.修改mysql登录用户密码
use mysql; 选中mysql库
update user set password=password('你要修改的密码') where user='用户名';
然后在刷新权限生效
flush privileges;
可用select length(password('123'))察看加密后密码长度
16.查看mysql端口号
mysql> show global variables like 'port';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| port | |
+---------------+-------+
17.查看临时表
mysql> SHOW STATUS LIKE 'created_tmp%';
+-------------------------+-------+
| Variable_name | Value |
+-------------------------+-------+
| Created_tmp_disk_tables | |
| Created_tmp_files | |
| Created_tmp_tables | |
+-------------------------+-------+
18.查看引擎
mysql> SHOW ENGINES;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine | Support | Comment | Transactions | XA | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| InnoDB | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES | YES | YES |
| FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL |
| MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
| BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO |
| MyISAM | YES | MyISAM storage engine | NO | NO | NO |
| MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
| CSV | YES | CSV storage engine | NO | NO | NO |
| ARCHIVE | YES | Archive storage engine | NO | NO | NO |
| PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
19.查看字符集
mysql> SHOW COLLATION;
+----------------------------+----------+-----+---------+----------+---------+
| Collation | Charset | Id | Default | Compiled | Sortlen |
+----------------------------+----------+-----+---------+----------+---------+
| armscii8_bin | armscii8 | | | Yes | |
| armscii8_general_ci | armscii8 | | Yes | Yes | |
| ascii_bin | ascii | | | Yes | |
| ascii_general_ci | ascii | | Yes | Yes | |
| big5_bin | big5 | | | Yes | |
| big5_chinese_ci | big5 | | Yes | Yes | |
| binary | binary | | Yes | Yes | |
| cp1250_bin | cp1250 | | | Yes | |
| cp1250_croatian_ci | cp1250 | | | Yes | |
| cp1250_czech_cs | cp1250 | | | Yes | |
| cp1250_general_ci | cp1250 | | Yes | Yes | |
| cp1250_polish_ci | cp1250 | | | Yes | |
20.查看线程使用的情况
mysql> SHOW STATUS LIKE 'threads%';
+-------------------+-------+
| Variable_name | Value |
+-------------------+-------+
| Threads_cached | |
| Threads_connected | |
| Threads_created | |
| Threads_running | |
+-------------------+-------+
21.启动时候指定用户身份
[root@localhost bin]# ./mysqld --user=mysql 指定用mysql用户身份
22.查看表字段及注释
show full fields from table_name;

23.修改表引擎
ALTER TABLE table_name ENGINE=InnoDB; #将表存储引擎修改为innodb
24.重置autoIncrement的值
ALTER TABLE table_name AUTO_INCREMENT = 1;
25.索引创建 删除 查看
CREATE UNIQUE INDEX index_name ON table_name(字段名) 创建唯一索引
DROP INDEX index_name ON talbe_name 删除索引
show index from table_name 查看表索引信息
26.查询当前MySQL本次启动后的运行统计时间
mysql> show status like 'uptime'; +---------------+--------+
| Variable_name | Value |
+---------------+--------+
| Uptime | 140459 |
+---------------+--------+
27.查看是否有表锁住
show OPEN TABLES where In_use > 0;
28.查看查询进程
show processlist;

如果不进入mysql命令行也可以进入mysql/bin目录下输入mysqladmin processlist。
如果没有SUPER权限,则只能看到自己发起的线程, 否则可以看到全部的线程。
29.返回不重复数据
SELECT DISTINCT user_name,vistor_username FROM KY_FEED_VISTOR WHERE user_name='shenhy'
单独的distinct只能放在开头 而且distinct()里面只能包含一个字段
SELECT * FROM KY_FEED_VISTOR WHERE user_name='shenhy' GROUP BY user_name, vistor_username ORDER BY vistor_time DESC
30.创建一个新表且新表的结构与查询的表的结构是一样,不过没有索引
create newTable newtable as select * from oldTable where 1=0;
31.模糊查询表
SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE table_schema = '数据库名' AND TABLE_NAME LIKE '表名%'

如果想生成清空多个表语句,也可以按照下面方法生成对多张表的truncate语句。
select CONCAT('truncate TABLE ',table_schema,'.',TABLE_NAME, ';') from INFORMATION_SCHEMA.TABLES where table_schema = '数据库名' AND TABLE_NAME LIKE '表名%';

32.复制表信息到另一张表
从一个表中复制所有的列插入到另一个已存在的表中:
INSERT INTO 表名 SELECT * FROM 目标表名;
或者只复制希望的列插入到另一个已存在的表中:
INSERT INTO 表名 (column_name(s)) SELECT column_name(s) FROM 目标表名;
33.获取字段后几个字符

34.mysql select update语句
当我们需要从select结果中去update时候,一般我们会想到update table set a= 1 where id in (select id from table), 但是这样是不行的,如下。

update select 语句需要使用inner join
update kaoqin_grant_record inner join (SELECT id FROM kaoqin_grant_record WHERE invalid_time <= '2019-11-01' AND balance_type = 5 AND operator_type = 1 AND is_has_cleand = 0) AS child on kaoqin_grant_record.id =child.id set kaoqin_grant_record.is_has_cleand = 1
35.获取所有表的行数
SELECT table_name, table_rows FROM information_schema.tables WHERE table_schema = 'hrms' ORDER BY table_rows desc

持续更新........
【mysql】工作中mysql常用命令及语句的更多相关文章
- 工作中Linux常用命令
rpm -qa|grep -i mysql rpm -ev mysql-server-5.1.73-5.el6_6.x86_64 如果报: error: Failed dependencies: li ...
- 工作中git常用命令
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; line-height: 16.0px; font: 14.0px "PingFang SC" } ...
- 工作中MySql的了解到的小技巧
工作中MySql的小技巧 1. 跑脚本时,经常遇到有则更新无插入的 逻辑操作:通常情况下,来一波if()判断然后选择 更新还是插入,前两天逛论坛时发现有人在比较REPLACE INTO 和 INSET ...
- Hive 常用命令和语句
示例数据库为 db_hive 1. 创建表 create-table.sql create table if not exists db_hive.tb_user ( id int, username ...
- git详情、git工作流程、常用命令、忽略文件、分支操作、gitee远程仓库使用
今日内容概要 git详情 git工作流程 git常用命令 过滤文件 分支操作 git远程仓库使用 可参照:https://www.cnblogs.com/liuqingzheng/p/15328319 ...
- Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们。
Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们. 这个是我将鸟哥书上的进行了一下整理的,希望不要涉及到版权问题. 1.显示日期的 ...
- MySQL常用命令和语句
1.常用SQL语句 1)常用函数/*type可取值为:MICROSECONDSECONDMINUTEHOURDAYWEEKMONTHQUARTERYEARSECOND_MICROSECONDMINUT ...
- Entity Framework Core生成的存储过程在MySQL中需要进行处理及PMC中的常用命令
在使用Entity Framework Core生成MySQL数据库脚本,对于生成的存储过程,在执行的过程中出现错误,需要在存储过程前面添加 delimiter // 附:可以使用Visual Stu ...
- Mac下安装MySQL及启动等常用命令
总结了下mac下的mysql安装步骤: eclipse JavaEE 下载 JDK -9 macosx下载 一.安装及启动服务 1. MySQL Server 下载.(以mys ...
随机推荐
- 注入技术--LSP劫持注入
1.原理 简单来说,LSP就是一个dll程序. 应用程序通过winsock2进行网络通信时,会调用ws2_32.dll的导出函数,如connect,accept等. 而后端通过LSP实现这些函数的底层 ...
- jmeter 连接数据库测试笔记
JDBC 常用mysql和oracal的jar包下载地址.jdbc driver class配置参考我的博客https://www.cnblogs.com/jackzz/p/9998975.html ...
- IdentityServer4【Introduction】之支持的规范
支持的规范 identityserver实现了下面的规范 OpenID Connect OpenID Connect Core 1.0 (spec) OpenID Connect Discovery ...
- MySQL基础配置之mysql的默认字符编码的设置(my.ini设置字符编码) - 转载
MySQL基础配置之mysql的默认字符编码的设置(my.ini设置字符编码) MySQL的默认编码是Latin1,不支持中文,那么如何修改MySQL的默认编码呢,下面以设置UTF-8为例来说明. 需 ...
- Django进阶知识
drf学习之Django进阶点 一.Django migrations原理 1.makemigrattions: 相当于在每个app下的migrations文件夹下生成一个py脚本文件用于创建表或则修 ...
- Spring Boot基础:Spring Boot简介与快速搭建(1)
1. Spring Boot简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的创建.运行.调试.部署等. Spring Boot默认使用tomca ...
- python设计模式第十天【观察者模式】
1.应用场景 (1)监听事件驱动程序中的外部事件 (2)监听某个对象的状态变化 (3)发布-订阅模型中,消息出现时通知邮件列表中的订阅者 2. 观察者模式UML图 3. 代码实现: #!/usr/bi ...
- PHP金额工具类之将阿利伯数字转换为大写中文数字
1.将阿拉伯数字转换为中文大写数字 <?php namespace core\components; class PriceHelper extends \yii\base\Component{ ...
- qtp 自动化测试--点滴 菜单没有了,有些控件运行时找不到
test项目页签下-没有了 菜单栏:file edit view insert 看不到了 1 解决:在startpage标签下-tool-option-点击 restore layout-确定 2 菜 ...
- 十一、ASP.NET Boilerplate
一.ASP.NET Boilerplate 实体是 DDD(领域驱动设计)的核心概念之一.Eric Evans 是这样描述的“很多对象不是通过它们的属性定义的,而是通过一连串的连续性事件和标识定义的” ...