mysql 的常用命令(DQL)

mysql 的常用命令(DQL),第1张

总结一下mysql 的常用 *** 作

注意:本篇文章主要是显示一些查询语句的写法,起备忘作用

1.查询

注:

1.and和or同时出现,and优先级比or高,若想or先执行加括号

2.in 查出的是具体值,不是区间,相当于多个or

注:最后一种,当我们按sal升序排序,发现有的值相同,我们可以在设置根据别的字段排序

注:在查询语句中,如果有group by,select 后面只能跟参与分组的字段或者分组函数,添加其他的没有意义

注:这里的条件 是使用的having,原因是根据执行顺序来说 avg(sal) >2500 (分组函数)不能在where处,

先从表中查询数据,经过where条件筛选出符合条件的数据,对这些有价值的数据进行分组,分组之后在使用having继续筛选

外连接,outer可省略

四张表连接!!!

from后边的子查询

1.导出整个数据库

mysqldump-u用户名-p–default-character-set=latin1数据库名》导出的文件名(数据库默认编码是latin1)23mysqldump-uwcnc-psmgp_apps_wcnc》wcnc.sql

2.导出一个表

mysqldump-u用户名-p数据库名表名》导出的文件名23mysqldump-uwcnc-psmgp_apps_wcncusers》wcnc_users.sql

3.导出一个数据库结构

mysqldump-uwcnc-p-d–add-drop-tablesmgp_apps_wcnc》d:wcnc_db.sql23-d没有数据–add-drop-table在每个create语句之前增加一个droptable

4.导入数据库

A:常用source命令23进入mysql数据库控制台,45如mysql-uroot-p67mysql》use数据库89然后使用source命令,后面参数为脚本文件(如这里用到的.sql)1011mysql》sourcewcnc_db.sql1213B:使用mysqldump命令1415mysqldump-uusername-pdbname《filename.sql1617C:使用mysql命令1819mysql-uusername-p-Ddbname《filename.sql启动与退出

1、进入MySQL:启动MySQLCommandLineClient(MySQL的DOS界面),直接输入安装时的密码即可。此时的提示符是:mysql》

2、退出MySQL:quit或exit

5.创建数据库

命令:createdatabase《数据库名》

例如:建立一个名为xhkdb的数据库

mysql》createdatabasexhkdb

6.显示所有的数据库

命令:showdatabases(注意:最后有个s)

mysql》showdatabases

7.删除数据库

命令:dropdatabase《数据库名》

8.连接数据库

命令:use《数据库名》

例如:如果xhkdb数据库存在,尝试存取它:

9.查看当前使用的数据库

mysql》selectdatabase()

10.当前数据库包含的表信息:

mysql》showtables(注意:最后有个s)

sync-binlog=0: 关闭通过MySQL服务器将二进制日志刷入磁盘,MySQL服务器依赖于 *** 作系统每秒将二进制日志刷新到磁盘。这个设置提供了最好的性能,但是当碰到断电或系统崩溃的时候,可能会造成服务器提交的事务没有被同步到二进制日志中。

sync-binlog=1: 开启在事务提交前将二进制日志刷入磁盘。这是最安全的设置,但是这对磁盘读写会造成负面影响。当碰到断电或系统崩溃的时候,丢失的事务只是进入准备状态,这个 *** 作允许自动恢复程序去回滚这些事务,保证了没有事务会从二进制日志中丢失。

sync-binlog=N: 每向二进制日志文件写入N条SQL或N个事务后,则把二进制日志文件的数据刷新到磁盘上;

innodb_flush_log_at_trx_commit=0: log buffer将每秒一次地写入log file中,并且log file的flush(刷到磁盘) *** 作同时进行。该模式下在事务提交的时候,不会主动触发写入磁盘的 *** 作。

innodb_flush_log_at_trx_commit=1: 完全遵从ACID,每次事务提交时MySQL都会把log buffer的数据写入log file,并且flush(刷到磁盘)中去。

innodb_flush_log_at_trx_commit=2: 每次事务提交时MySQL都会把log buffer的数据写入log file,但是flush(刷到磁盘) *** 作并不会同时进行。该模式下,MySQL会每秒执行一次 flush(刷到磁盘) *** 作。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9943114.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存