`
CtripMySQLDBA
  • 浏览: 57238 次
  • 来自: 上海
社区版块
存档分类
最新评论

MySQL中可能忽视的几个细节问题

阅读更多

从SQL SERVER转型到MySQL的过程中,我发现对SQL SERVER的DBA来说,使用MySQL时有些容易忽略的问题。先整理了几个:

 

一、用户名是大小写敏感的(我们开启了lower_case_table_names来解决表名和库名大小写的问题,但是貌似没找到参数可以配置用户名的大小写问题),比如说创建的用户名是appuser,用AppUser登录就会失败,这点在我们配置连接串的时候出现过问题,而且一时难以发现。

 

二、关于自增长列:

1、 自增长列可能不是唯一的。MySQL在创建表时,要求auto_crement的字段必须是key,但并不要求是唯一索引,因此如果只将自增长列定义为普通的索引,则可以在里面插入重复的自增ID。

2、当自增长列超过字段类型允许的上限时,获取到的值就是允许的最大值。比如定义为tinyint的自增长,当增长到127时达到上限,继续插入数据,获取到的值仍然是127。这时如果自增长是主键或有唯一约束,则会插入报错;否则,会有重复的127值插入。

 

三、关于存储过程的definer:(如果不指定definer,则存储过程的definer就是创建者)除非在创建存储过程时显式指定SQL SECURITY为INVOKER,否则默认情况下存储过程运行时就是以definer的权限运行。也就是说,当definer有足够权限的时候,任何用户只要有执行存储过程的权限,就可以成功运行存储过程中的任何内容。并且,如果definer的用户在MySQL里不再存在,那么存储过程的运行就会出错。

 

 

0
2
分享到:
评论
1 楼 勇敢的核桃 2013-04-23  
恩,说的很好

相关推荐

    INFA技术超群_中文KB_00029_TDM_Mysql中Longtext字段处理方式

    由于Longtext字段容量较大,因此在传输过程中可能会遇到数据截断或丢失的问题。解决这一问题的方法之一是确保数据管道足够宽,能够容纳这些大型文本数据。 2. **转换** - Informatica提供了丰富的转换组件来处理...

    MFC_MYSQL.rar

    这通常涉及以下几个步骤: 1. **安装MySQL Connector/C++**:这是MySQL官方提供的C++接口,允许C++程序与MySQL数据库进行交互。下载并安装后,你需要将包含的头文件和库文件路径添加到MFC项目的编译和链接设置中。 ...

    VC使用API连接MYSQL

    使用VC连接MySQL通常涉及以下几个步骤: - **配置环境**:确保Visual Studio和MySQL Server正确安装,且已安装MySQL的C++连接器。 - **编写代码**:使用MySQL Connector/C++ API,编写代码来建立数据库连接、...

    Mysql中大小写敏感问题导致的MySql Error 1146 Tabel doen’t exist错误

    MySql Error 1146 Tabel doen’t exist,一般情况下是表不存在,或者表名写错了、权限...无辜的看着这段报错代码,发呆了半天,突然发现了一个已经被我忽视的细节,详细的报错代码为 Tabel ABC doen’t exist,这里的

    贮水池_csdn

    结合以上信息,我们可以探讨以下几个IT知识点: 1. **数据库设计**:在软件开发中,设计和实现高效的数据存储方案至关重要。这可能包括选择合适的数据库管理系统(如关系型数据库MySQL、NoSQL数据库MongoDB等),...

    如何实现逻辑数据模型

    然而,在实际工作中,很多开发者往往因为对设计步骤不够了解而忽视了这个关键步骤。本文旨在详细介绍如何实现逻辑数据模型,并探讨其在整个数据库设计过程中的作用。 #### 二、数据库设计的重要性 在数据库项目中...

    计算机软件-编程源码-实例7 多媒体数据库的使用.zip

    在这个实例中,我们可能涉及到以下几个关键知识点: 1. **多媒体数据类型**:多媒体数据库包含不同类型的数据,如图像(JPEG、PNG)、音频(MP3、WAV)、视频(MP4、AVI)等。理解和处理这些不同格式的数据是多媒体...

    python源码甜橙音乐网程序

    不过,我们可以推测,甜橙音乐网程序可能涉及以下几个方面的知识点: 1. 网络爬虫:程序可能使用Python的网络爬虫技术来抓取音乐资源。网络爬虫是一种自动获取网页内容的程序,常用的Python库如requests、...

    餐饮系统数据库buffet.rar

    餐饮系统数据库的设计通常包含以下几个主要表: 1. **顾客信息表**:记录客户的个人信息,如姓名、联系方式、会员等级等。这些信息有助于提供个性化的服务,如会员优惠、生日特惠等。 2. **菜品表**:存储菜品的...

    苹果cms白菜app版本一.zip

    苹果CMS APP的开发通常涉及以下几个核心知识点: 1. **PHP语言**:苹果CMS是基于PHP开发的,因此理解和编写PHP代码是必不可少的。你需要熟悉PHP语法、面向对象编程以及如何与MySQL数据库交互。 2. **MySQL数据库**...

    ASP个人网站建设设计(源代码+论文).rar

    这个"ASP个人网站建设设计"项目可能包含以下几个关键部分: 1. **前端设计**:前端部分主要负责用户界面的呈现,通常使用HTML、CSS和JavaScript实现。HTML用于构建网页结构,CSS用于样式控制,JavaScript则提供交互...

    springboot065基于智能推荐的卫生健康系统.zip

    系统的设计可能包含以下几个关键模块: 1. 用户管理:用于注册、登录、用户信息管理,确保用户安全和隐私。 2. 数据收集:集成各种设备或API接口,收集用户的健康数据,如步数、心率、睡眠质量等。 3. 数据处理与...

    百度_baidu_源码

    在PHP中,构建框架通常涉及到以下几个核心概念: 1. **路由系统**:这是框架的核心部分,它负责解析URL并调用相应的控制器和方法。在本项目中,我们可以看到如何定义和处理路由,使用户请求能正确地导向对应的业务...

    人员信息管理系统基础框架易语言源码

    在学习这个基础框架时,开发者应该重点关注以下几个方面: 1. 数据库操作:理解如何在易语言中建立数据库连接,执行SQL语句,以及处理数据事务。 2. UI设计:学习如何使用易语言的控件创建用户界面,以及如何通过...

    小虫新闻管理系统V1.0_xcnewsv1.0.rar

    在这个新闻管理系统中,我们可以预期以下几个关键组成部分: 1. 用户界面:用户通过浏览器访问的前端部分,可能包含登录、注册、新闻浏览、搜索等功能,这部分主要由HTML、CSS和JavaScript构建,与JSP交互以获取和...

Global site tag (gtag.js) - Google Analytics