0

0

Mysql的一些常用方法_MySQL

php中文网

php中文网

发布时间:2016-06-01 13:32:09

|

1040人浏览过

|

来源于php中文网

原创

bitsCN.com

公司近期为新来同事做了一次培训,我也偷偷溜进去观摩了一下,内容虽然很基础,但是还是挺有用的。这里做了一下资料汇总:

2种存储引擎

InnoDB:支持事务处理、外键、行级锁,游戏业务库使用MyISAM:不支持事务,写入速度快,游戏日志库使用

什么样的查询会用到索引

最左前缀原理(索引条件紧跟where)1.全列匹配,按照索引中所有列进行精确匹配(这里精确匹配指”=”或”IN”匹配)2.最左前缀匹配3.查询条件用到了索引中列的精确匹配,但是中间某个条件未提供:用到索引(只用到最左)4.使用like查询,%不能在第一位 ,如:s_rolename like ‘南博%’:使用索引s_rolename like ‘%南博’:不使用索引所以如果列要模糊查询,可在前面添个字段,如'0南博万'5.一次查询只会用到一个索引,查询时尽量遵循最左前缀原理如果有多个索引匹配,则默认优先按照索引建立顺序启用

什么样的查询不会用到索引

1.查询条件中不包含索引列2.索引列使用了函数或者表达式3.使用了like,%在最前面

查询原则

1.只取出自己需要的列select n_roleid,s_rolename from player_roles where n_roleid=1;这里n_roleid是传进去的,可以不放到查询结果中 2.关联查询时永远用小结果集驱动大结果集SELECT  pr.s_rolename,  t.*FROM (SELECT        n_roleid,        n_lv      FROM player_property pp      WHERE pp.n_lv >= 30) t  INNER JOIN player_roles prWHERE t.n_roleid = pr.n_roleid

存储过程

过程内的变量定义: DECLARE  p_count1 INTEGER(11) DEFAULT 0;SET @p_count2=0;DECLARE:局部变量,作用范围是声明该变量的BEGIN...END块 SET:会话内全局变量,作用范围是当前会话,可以在SQL、PROC、FUNC之间传递,使用不当可能会出BUG:比如2个过程都使用这个全局变量,则可能会出现变量被串用,因此在使用前建议初始化,SET @p_count2=0; 锁(SELECT … FOR UPDATE)行级锁  明确指定主键且有数据,无数据时没有锁  select n_money,n_token into … from acc_balance where n_roleid=1 for update表级锁  没有指定主键或者主键不明确  select * from acc_balance where n_roleid1 for update;

数据库操作

登录数据库mysql --default-character-set=utf8 -uroot -p'123' -h192.168.0.14 -P3300 king_db --default-character-set:设定client的字符编码-u:登录用户-p:密码-h:指定HOST-P:指定端口 导入数据库脚本mysql --default-character-set=utf8 -uroot -p'123' -h192.168.0.14 -P3300 king_dbsource 目录/脚本 导出数据库脚本(mysqldump)

常用参数名

描述

--no-create-db,-n

没有CREATE DATABASE...

--no-data,-d

只导结构,不导数据

--database,-B

有CREATE TABLE…

--no-create-info,-t

没有CREATE TABLE…

UQ云商B2B2C系统
UQ云商B2B2C系统

UQCMS云商是一款B2B2C电子商务软件 ,非常适合初创的创业者,个人及中小型企业。程序采用PHP+MYSQL,模板采用smarty模板,二次开发,简单方便,无需学习其他框架就可以自行模板设计。永久免费使用,操作简单,安全稳定。支持PC+WAP+微信三种浏览方式,支持微信公众号。

下载

--tables

指定需要导出的表,覆盖--database或-B选

--ignore-table

指定不需要导出的表

每次只能指定一个表,多个表需要重复多次指定

每个表必须同时指定数据库和表名db.tablename

 示例-- 导出全库结构    mysqldump -uroot -p123 -h192.168.0.26 -P3301 -B --opt -R -d playboy_cn_cn_test > struct.sql-- 导入结构    mysql --default-character-set=utf8 -uroot -p123 -h127.0.0.1 -P3306 data.sql-- 导入数据    mysql --default-character-set=utf8 -uroot -p123 -h127.0.0.1 -P3306 playboy_cn_cn_test

相关专题

更多
Word 字间距调整方法汇总
Word 字间距调整方法汇总

本专题整合了Word字间距调整方法,阅读下面的文章了解更详细操作。

2

2025.12.24

任务管理器教程
任务管理器教程

本专题整合了任务管理器相关教程,阅读下面的文章了解更多详细操作。

2

2025.12.24

AppleID格式
AppleID格式

本专题整合了AppleID相关内容,阅读专题下面的文章了解更多详细教程。

0

2025.12.24

csgo视频观看入口合集
csgo视频观看入口合集

本专题整合了csgo观看入口合集,阅读下面的文章了知道更多入口地址。

29

2025.12.24

yandex外贸入口合集
yandex外贸入口合集

本专题汇总了yandex外贸入口地址,阅读下面的文章了解更多内容。

58

2025.12.24

添加脚注通用方法
添加脚注通用方法

本专题整合了添加脚注方法合集,阅读专题下面的文章了解更多内容。

1

2025.12.24

重启电脑教程汇总
重启电脑教程汇总

本专题整合了重启电脑操作教程,阅读下面的文章了解更多详细教程。

3

2025.12.24

纸张尺寸汇总
纸张尺寸汇总

本专题整合了纸张尺寸相关内容,阅读专题下面的文章了解更多内容。

5

2025.12.24

Java Spring Boot 微服务实战
Java Spring Boot 微服务实战

本专题深入讲解 Java Spring Boot 在微服务架构中的应用,内容涵盖服务注册与发现、REST API开发、配置中心、负载均衡、熔断与限流、日志与监控。通过实际项目案例(如电商订单系统),帮助开发者掌握 从单体应用迁移到高可用微服务系统的完整流程与实战能力。

1

2025.12.24

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
C++教程
C++教程

共115课时 | 9.7万人学习

Java 教程
Java 教程

共578课时 | 37万人学习

Webpack4.x---十天技能课堂
Webpack4.x---十天技能课堂

共20课时 | 1.4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号