mirror of
https://github.com/MariaDB/server.git
synced 2025-02-01 11:31:51 +01:00
Merge joreland@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/jonas/src/mysql-5.0
This commit is contained in:
commit
9642b95c6c
153 changed files with 2408 additions and 1065 deletions
|
@ -25,6 +25,7 @@ bar@bar.intranet.mysql.r18.ru
|
|||
bar@bar.mysql.r18.ru
|
||||
bar@bar.udmsearch.izhnet.ru
|
||||
bar@deer.(none)
|
||||
bar@eagle.intranet.mysql.r18.ru
|
||||
bar@gw.udmsearch.izhnet.ru
|
||||
bar@mysql.com
|
||||
bar@noter.intranet.mysql.r18.ru
|
||||
|
@ -227,6 +228,7 @@ salle@vafla.online.bg
|
|||
sasha@mysql.sashanet.com
|
||||
serg@build.mysql.com
|
||||
serg@build.mysql2.com
|
||||
serg@mysql.com
|
||||
serg@serg.mylan
|
||||
serg@serg.mysql.com
|
||||
serg@sergbook.mylan
|
||||
|
|
|
@ -1,5 +1,16 @@
|
|||
#!/bin/sh
|
||||
|
||||
if [ "$BK_USER" = "Administrator" -o "$BK_USER" = "mysqldev" ]
|
||||
then
|
||||
echo "Error: you cannot commit as 'Administrator' or 'mysqldev' user."
|
||||
echo "as a workaround set BK_USER to your nickname"
|
||||
echo "e.g.: export BK_USER='bar'"
|
||||
echo ""
|
||||
echo "Checkin FAILED!"
|
||||
echo "Set BK_USER and retry."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$REAL_EMAIL" = "" ]
|
||||
then
|
||||
echo "Error: you must set REAL_EMAIL in your profile"
|
||||
|
|
|
@ -47,7 +47,7 @@ BSC32=bscmake.exe
|
|||
# ADD BSC32 /nologo
|
||||
LINK32=xilink6.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"LIBCMTD" /out:"Release/mysql-server.exe"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"LIBCMTD" /out:"..\test_libmysqld.exe"
|
||||
# Begin Target
|
||||
|
||||
# Name "test_libmysqld - Win32 Release"
|
||||
|
@ -71,9 +71,5 @@ SOURCE=..\..\client\readline.cpp
|
|||
SOURCE=..\..\client\sql_string.cpp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\..\lib_release\libmysqld.lib
|
||||
# End Source File
|
||||
# End Target
|
||||
# End Project
|
||||
|
|
|
@ -3,21 +3,6 @@ Microsoft Developer Studio Workspace File, Format Version 6.00
|
|||
|
||||
###############################################################################
|
||||
|
||||
Project: "MySqlManager"=".\mysqlmanager\MySqlManager.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name mysqlclient
|
||||
End Project Dependency
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "bdb"=".\bdb\bdb.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
|
@ -420,9 +405,6 @@ Package=<4>
|
|||
Project_Dep_Name mysqlimport
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name MySqlManager
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name mysqlshow
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
|
|
|
@ -508,9 +508,6 @@ Package=<4>
|
|||
Project_Dep_Name mysqlimport
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name MySqlManager
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name mysqlshow
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
|
|
|
@ -1,276 +0,0 @@
|
|||
# Microsoft Developer Studio Project File - Name="MySqlManager" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Application" 0x0101
|
||||
|
||||
CFG=MYSQLMANAGER - WinIA64 DEBUG
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "MySqlManager.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "MySqlManager.mak" CFG="MYSQLMANAGER - WinIA64 DEBUG"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "MySqlManager - WinIA64 Release" (based on "Win32 (x86) Application")
|
||||
!MESSAGE "MySqlManager - WinIA64 Debug" (based on "Win32 (x86) Application")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
MTL=midl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "MySqlManager - WinIA64 Release"
|
||||
|
||||
# PROP BASE Use_MFC 6
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 6
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "release"
|
||||
# PROP Intermediate_Dir "release"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MD /W3 /GX /O2 /D "WIN64" /D "NDEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /c
|
||||
# ADD CPP /nologo /MT /W3 /Zi /O2 /I "../include" /D "NDEBUG" /D "DBUG_OFF" /D "_WINDOWS" /D "_IA64_" /D "WIN64" /D "WIN32" /D "_AFX_NO_DAO_SUPPORT" /FD /G2 /EHsc /Wp64 /Zm600 /c
|
||||
# SUBTRACT CPP /WX /Fr /YX /Yc /Yu
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win64
|
||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win64
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG" /d "_AFXDLL"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG" /d "_AFXDLL"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 /nologo /subsystem:windows /machine:IA64
|
||||
# ADD LINK32 /nologo /subsystem:windows /out:"../client_release/MySqlManager.exe" /machine:IA64
|
||||
# SUBTRACT LINK32 /nodefaultlib
|
||||
|
||||
!ELSEIF "$(CFG)" == "MySqlManager - WinIA64 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 6
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 6
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "debug"
|
||||
# PROP Intermediate_Dir "debug"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /D "WIN64" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /c
|
||||
# ADD CPP /nologo /MTd /W3 /GR /Zi /Od /I "../include" /D "_DEBUG" /D "_WINDOWS" /D "_IA64_" /D "WIN64" /D "WIN32" /D "_AFX_NO_DAO_SUPPORT" /FD /G2 /EHsc /Wp64 /Zm600 /c
|
||||
# SUBTRACT CPP /Fr /YX /Yc /Yu
|
||||
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win64
|
||||
# ADD MTL /nologo /D "_DEBUG" /o "NUL" /win64
|
||||
# SUBTRACT MTL /mktyplib203
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 /nologo /subsystem:windows /debug /machine:IA64
|
||||
# ADD LINK32 wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib uuid.lib /nologo /subsystem:windows /incremental:no /debug /out:"../client_debug/MySqlManager.exe" /libpath:"..\lib_debug\\" /machine:IA64
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "MySqlManager - WinIA64 Release"
|
||||
# Name "MySqlManager - WinIA64 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ChildFrm.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE="..\strings\ctype-extra.c"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE="..\strings\ctype-latin1.c"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE="..\strings\ctype-mb.c"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\strings\is_prefix.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MainFrm.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\mysys\my_sleep.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\strings\my_vsnprintf.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManager.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManager.rc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManagerDoc.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManagerView.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\RegisterServer.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\StdAfx.cpp
|
||||
# ADD CPP /Yc"stdafx.h"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSql.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSqlQuery.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSqlResults.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSqlStatus.cpp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ChildFrm.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MainFrm.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManager.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManagerDoc.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\MySqlManagerView.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\RegisterServer.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Resource.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\StdAfx.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSqlQuery.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSqlResults.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ToolSqlStatus.h
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Resource Files"
|
||||
|
||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\bitmap1.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\bitmap3.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\bmp00001.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\bmp00002.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\database.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\fontd.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\fontu.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\MySqlManager.ico
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\MySqlManager.rc2
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\MySqlManagerDoc.ico
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\query_ex.bmp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\res\Toolbar.bmp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ReadMe.txt
|
||||
# End Source File
|
||||
# End Target
|
||||
# End Project
|
|
@ -536,6 +536,10 @@ SOURCE=.\my_wincond.c
|
|||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\my_windac.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\my_winsem.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
|
|
@ -489,7 +489,7 @@ __bam_new_file(dbp, txn, fhp, name)
|
|||
goto err;
|
||||
} else {
|
||||
#ifdef DIAGNOSTIC
|
||||
memset(buf, dbp->pgsize, 0);
|
||||
memset(buf, 0, dbp->pgsize);
|
||||
#endif
|
||||
root = (PAGE *)buf;
|
||||
}
|
||||
|
|
|
@ -409,7 +409,7 @@ __ham_new_file(dbp, txn, fhp, name)
|
|||
goto err;
|
||||
} else {
|
||||
#ifdef DIAGNOSTIC
|
||||
memset(buf, dbp->pgsize, 0);
|
||||
memset(buf, 0, dbp->pgsize);
|
||||
#endif
|
||||
page = (PAGE *)buf;
|
||||
}
|
||||
|
|
|
@ -3090,9 +3090,14 @@ void tee_fprintf(FILE *file, const char *fmt, ...)
|
|||
#ifdef OS2
|
||||
fflush( file);
|
||||
#endif
|
||||
if (opt_outfile)
|
||||
(void) vfprintf(OUTFILE, fmt, args);
|
||||
va_end(args);
|
||||
|
||||
if (opt_outfile)
|
||||
{
|
||||
va_start(args, fmt);
|
||||
(void) vfprintf(OUTFILE, fmt, args);
|
||||
va_end(args);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -3311,7 +3311,7 @@ static void run_query_display_metadata(MYSQL_FIELD *field, uint num_fields,
|
|||
{
|
||||
MYSQL_FIELD *field_end;
|
||||
dynstr_append(ds,"Catalog\tDatabase\tTable\tTable_alias\tColumn\t"
|
||||
"Column_alias\tName\tType\tLength\tMax length\tIs_null\t"
|
||||
"Column_alias\tType\tLength\tMax length\tIs_null\t"
|
||||
"Flags\tDecimals\tCharsetnr\n");
|
||||
|
||||
for (field_end= field+num_fields ;
|
||||
|
|
29
config/ac-macros/ha_blackhole.m4
Normal file
29
config/ac-macros/ha_blackhole.m4
Normal file
|
@ -0,0 +1,29 @@
|
|||
dnl ---------------------------------------------------------------------------
|
||||
dnl Macro: MYSQL_CHECK_BLACKHOLEDB
|
||||
dnl Sets HAVE_BLACKHOLE_DB if --with-blackhole-storage-engine is used
|
||||
dnl ---------------------------------------------------------------------------
|
||||
AC_DEFUN([MYSQL_CHECK_BLACKHOLEDB], [
|
||||
AC_ARG_WITH([blackhole-storage-engine],
|
||||
[
|
||||
--with-blackhole-storage-engine
|
||||
Enable the Blackhole Storage Engine],
|
||||
[blackholedb="$withval"],
|
||||
[blackholedb=no])
|
||||
AC_MSG_CHECKING([for blackhole storage engine])
|
||||
|
||||
case "$blackholedb" in
|
||||
yes )
|
||||
AC_DEFINE([HAVE_BLACKHOLE_DB], [1], [Builds Blackhole Storage Engine])
|
||||
AC_MSG_RESULT([yes])
|
||||
[blackholedb=yes]
|
||||
;;
|
||||
* )
|
||||
AC_MSG_RESULT([no])
|
||||
[blackholedb=no]
|
||||
;;
|
||||
esac
|
||||
|
||||
])
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl END OF MYSQL_CHECK_BLACKHOLE SECTION
|
||||
dnl ---------------------------------------------------------------------------
|
|
@ -6,7 +6,7 @@ AC_PREREQ(2.50)dnl Minimum Autoconf version required.
|
|||
AC_INIT(sql/mysqld.cc)
|
||||
AC_CANONICAL_SYSTEM
|
||||
# Don't forget to also update the NDB lines below.
|
||||
AM_INIT_AUTOMAKE(mysql, 5.0.3-beta)
|
||||
AM_INIT_AUTOMAKE(mysql, 5.0.4-beta)
|
||||
AM_CONFIG_HEADER(config.h)
|
||||
|
||||
PROTOCOL_VERSION=10
|
||||
|
@ -17,7 +17,7 @@ SHARED_LIB_VERSION=14:0:0
|
|||
# ndb version
|
||||
NDB_VERSION_MAJOR=5
|
||||
NDB_VERSION_MINOR=0
|
||||
NDB_VERSION_BUILD=3
|
||||
NDB_VERSION_BUILD=4
|
||||
NDB_VERSION_STATUS="beta"
|
||||
|
||||
# Set all version vars based on $VERSION. How do we do this more elegant ?
|
||||
|
@ -37,6 +37,7 @@ sinclude(config/ac-macros/character_sets.m4)
|
|||
sinclude(config/ac-macros/compiler_flag.m4)
|
||||
sinclude(config/ac-macros/ha_archive.m4)
|
||||
sinclude(config/ac-macros/ha_berkeley.m4)
|
||||
sinclude(config/ac-macros/ha_blackhole.m4)
|
||||
sinclude(config/ac-macros/ha_example.m4)
|
||||
sinclude(config/ac-macros/ha_federated.m4)
|
||||
sinclude(config/ac-macros/ha_innodb.m4)
|
||||
|
@ -2377,6 +2378,7 @@ MYSQL_CHECK_INNODB
|
|||
MYSQL_CHECK_EXAMPLEDB
|
||||
MYSQL_CHECK_ARCHIVEDB
|
||||
MYSQL_CHECK_CSVDB
|
||||
MYSQL_CHECK_BLACKHOLEDB
|
||||
MYSQL_CHECK_NDBCLUSTER
|
||||
MYSQL_CHECK_FEDERATED
|
||||
|
||||
|
|
|
@ -121,19 +121,36 @@
|
|||
#endif
|
||||
|
||||
/*
|
||||
Solaris include file <sys/feature_tests.h> refers to X/Open document
|
||||
Solaris 9 include file <sys/feature_tests.h> refers to X/Open document
|
||||
|
||||
System Interfaces and Headers, Issue 5
|
||||
|
||||
saying we should define _XOPEN_SOURCE=500 to get POSIX.1c prototypes
|
||||
saying we should define _XOPEN_SOURCE=500 to get POSIX.1c prototypes,
|
||||
but apparently other systems (namely FreeBSD) don't agree.
|
||||
Furthermore X/Open has since 2004 "System Interfaces, Issue 6"
|
||||
that dictates _XOPEN_SOURCE=600, but Solaris checks for 500.
|
||||
So, let's define 500 for solaris only.
|
||||
|
||||
On a newer Solaris 10, the above file recognizes also _XOPEN_SOURCE=600.
|
||||
Furthermore, it tests that if a program requires older standard
|
||||
(_XOPEN_SOURCE<600 or _POSIX_C_SOURCE<200112L) it cannot be
|
||||
run on a new compiler (that defines _STDC_C99) and issues an #error.
|
||||
It's also an #error if a program requires new standard (_XOPEN_SOURCE=600
|
||||
or _POSIX_C_SOURCE=200112L) and a compiler does not define _STDC_C99.
|
||||
|
||||
To add more to this mess, Sun Studio C compiler defines _STDC_C99 while
|
||||
C++ compiler does not!
|
||||
|
||||
So, in a desperate attempt to get correct prototypes for both
|
||||
C and C++ code, we define either _XOPEN_SOURCE=600 or _XOPEN_SOURCE=500
|
||||
depending on the compiler's announced C standard support.
|
||||
|
||||
Cleaner solutions are welcome.
|
||||
*/
|
||||
#ifdef __sun
|
||||
#if __STDC_VERSION__ - 0 >= 199901L
|
||||
#define _XOPEN_SOURCE 600
|
||||
#else
|
||||
#define _XOPEN_SOURCE 500
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(THREAD) && !defined(__WIN__) && !defined(OS2)
|
||||
#ifndef _POSIX_PTHREAD_SEMANTICS
|
||||
|
|
|
@ -845,7 +845,8 @@ extern char *get_charsets_dir(char *buf);
|
|||
extern my_bool my_charset_same(CHARSET_INFO *cs1, CHARSET_INFO *cs2);
|
||||
extern my_bool init_compiled_charsets(myf flags);
|
||||
extern void add_compiled_collation(CHARSET_INFO *cs);
|
||||
extern ulong escape_string_for_mysql(CHARSET_INFO *charset_info, char *to,
|
||||
extern ulong escape_string_for_mysql(CHARSET_INFO *charset_info,
|
||||
char *to, ulong to_length,
|
||||
const char *from, ulong length);
|
||||
|
||||
extern void thd_increment_bytes_sent(ulong length);
|
||||
|
@ -854,6 +855,14 @@ extern void thd_increment_net_big_packet_count(ulong length);
|
|||
|
||||
#ifdef __WIN__
|
||||
extern my_bool have_tcpip; /* Is set if tcpip is used */
|
||||
|
||||
/* implemented in my_windac.c */
|
||||
|
||||
int my_security_attr_create(SECURITY_ATTRIBUTES **psa, const char **perror,
|
||||
DWORD owner_rights, DWORD everybody_rights);
|
||||
|
||||
void my_security_attr_free(SECURITY_ATTRIBUTES *sa);
|
||||
|
||||
#endif
|
||||
#ifdef __NETWARE__
|
||||
void netware_reg_user(const char *ip, const char *user,
|
||||
|
|
|
@ -396,8 +396,9 @@ struct trx_struct{
|
|||
dulint table_id; /* table id if the preceding field is
|
||||
TRUE */
|
||||
/*------------------------------*/
|
||||
int active_trans; /* whether a transaction in MySQL
|
||||
is active */
|
||||
int active_trans; /* 1 - if a transaction in MySQL
|
||||
is active. 2 - if prepare_commit_mutex
|
||||
was taken */
|
||||
void* mysql_thd; /* MySQL thread handle corresponding
|
||||
to this trx, or NULL */
|
||||
char** mysql_query_str;/* pointer to the field in mysqld_thd
|
||||
|
|
|
@ -96,7 +96,8 @@ clean-local:
|
|||
`echo $(sql_cmn_objects) | sed "s;\.lo;.c;g"` \
|
||||
$(CHARSET_SRCS) $(CHARSET_OBJS) \
|
||||
$(mystringsextra) $(mysysheaders) $(vioheaders)\
|
||||
../linked_client_sources net.c
|
||||
../linked_libmysql_sources ../linked_libmysql_r_sources \
|
||||
net.c
|
||||
|
||||
conf_to_src_SOURCES = conf_to_src.c
|
||||
conf_to_src_LDADD=
|
||||
|
|
|
@ -1575,14 +1575,14 @@ mysql_hex_string(char *to, const char *from, ulong length)
|
|||
ulong STDCALL
|
||||
mysql_escape_string(char *to,const char *from,ulong length)
|
||||
{
|
||||
return escape_string_for_mysql(default_charset_info, to, from, length);
|
||||
return escape_string_for_mysql(default_charset_info, to, 0, from, length);
|
||||
}
|
||||
|
||||
ulong STDCALL
|
||||
mysql_real_escape_string(MYSQL *mysql, char *to,const char *from,
|
||||
ulong length)
|
||||
{
|
||||
return escape_string_for_mysql(mysql->charset, to, from, length);
|
||||
return escape_string_for_mysql(mysql->charset, to, 0, from, length);
|
||||
}
|
||||
|
||||
|
||||
|
@ -2862,6 +2862,17 @@ int STDCALL mysql_stmt_execute(MYSQL_STMT *stmt)
|
|||
mysql->status= MYSQL_STATUS_READY;
|
||||
stmt->read_row_func= stmt_read_row_from_cursor;
|
||||
}
|
||||
else if (stmt->flags & CURSOR_TYPE_READ_ONLY)
|
||||
{
|
||||
/*
|
||||
This is a single-row result set, a result set with no rows, EXPLAIN,
|
||||
SHOW VARIABLES, or some other command which either a) bypasses the
|
||||
cursors framework in the server and writes rows directly to the
|
||||
network or b) is more efficient if all (few) result set rows are
|
||||
precached on client and server's resources are freed.
|
||||
*/
|
||||
DBUG_RETURN(mysql_stmt_store_result(stmt));
|
||||
}
|
||||
else
|
||||
{
|
||||
stmt->mysql->unbuffered_fetch_owner= &stmt->unbuffered_fetch_cancelled;
|
||||
|
|
|
@ -146,4 +146,6 @@ EXPORTS
|
|||
mysql_rpl_query_type
|
||||
mysql_slave_query
|
||||
mysql_embedded
|
||||
mysql_server_init
|
||||
mysql_server_end
|
||||
get_defaults_files
|
||||
|
|
|
@ -62,7 +62,8 @@ sqlsources = derror.cc field.cc field_conv.cc strfunc.cc filesort.cc \
|
|||
unireg.cc uniques.cc stacktrace.c sql_union.cc hash_filo.cc \
|
||||
spatial.cc gstream.cc sql_help.cc tztime.cc protocol_cursor.cc \
|
||||
sp_head.cc sp_pcontext.cc sp.cc sp_cache.cc sp_rcontext.cc \
|
||||
parse_file.cc sql_view.cc sql_trigger.cc my_decimal.cc
|
||||
parse_file.cc sql_view.cc sql_trigger.cc my_decimal.cc \
|
||||
ha_blackhole.cc
|
||||
|
||||
libmysqld_int_a_SOURCES= $(libmysqld_sources) $(libmysqlsources) $(sqlsources) $(sqlexamplessources)
|
||||
libmysqld_a_SOURCES=
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
LIBRARY LIBMYSQLD
|
||||
DESCRIPTION 'MySQL 4.1 Embedded Server Library'
|
||||
VERSION 4.1
|
||||
DESCRIPTION 'MySQL 5.0 Embedded Server Library'
|
||||
VERSION 5.0
|
||||
EXPORTS
|
||||
_dig_vec_upper
|
||||
_dig_vec_lower
|
||||
|
@ -158,3 +158,5 @@ EXPORTS
|
|||
mysql_stmt_attr_set
|
||||
mysql_stmt_field_count
|
||||
get_defaults_files
|
||||
my_charset_bin
|
||||
my_charset_same
|
||||
|
|
|
@ -427,8 +427,8 @@ static void usage(void)
|
|||
can't fix the data file.\n\
|
||||
--character-sets-dir=...\n\
|
||||
Directory where character sets are.\n\
|
||||
--set-character-set=name\n\
|
||||
Change the character set used by the index.\n\
|
||||
--set-collation=name\n\
|
||||
Change the collation used by the index.\n\
|
||||
-q, --quick Faster repair by not modifying the data file.\n\
|
||||
One can give a second '-q' to force myisamchk to\n\
|
||||
modify the original datafile in case of duplicate keys.\n\
|
||||
|
|
|
@ -17,7 +17,7 @@ http://dev.mysql.com/doc/mysql/en/MySQL_test_suite.html
|
|||
|
||||
You can create your own test cases. To create a test case:
|
||||
|
||||
xeamacs t/test_case_name.test
|
||||
xemacs t/test_case_name.test
|
||||
|
||||
in the file, put a set of SQL commands that will create some tables,
|
||||
load test data, run some queries to manipulate it.
|
||||
|
|
4
mysql-test/include/have_blackhole.inc
Normal file
4
mysql-test/include/have_blackhole.inc
Normal file
|
@ -0,0 +1,4 @@
|
|||
-- require r/have_blackhole.require
|
||||
disable_query_log;
|
||||
show variables like "have_blackhole_engine";
|
||||
enable_query_log;
|
86
mysql-test/r/blackhole.result
Normal file
86
mysql-test/r/blackhole.result
Normal file
|
@ -0,0 +1,86 @@
|
|||
drop table if exists t1,t2;
|
||||
CREATE TABLE t1 (
|
||||
Period smallint(4) unsigned zerofill DEFAULT '0000' NOT NULL,
|
||||
Varor_period smallint(4) unsigned DEFAULT '0' NOT NULL
|
||||
) ENGINE=blackhole;
|
||||
INSERT INTO t1 VALUES (9410,9412);
|
||||
select period from t1;
|
||||
period
|
||||
select * from t1;
|
||||
Period Varor_period
|
||||
select t1.* from t1;
|
||||
Period Varor_period
|
||||
CREATE TABLE t2 (
|
||||
auto int NOT NULL auto_increment,
|
||||
fld1 int(6) unsigned zerofill DEFAULT '000000' NOT NULL,
|
||||
companynr tinyint(2) unsigned zerofill DEFAULT '00' NOT NULL,
|
||||
fld3 char(30) DEFAULT '' NOT NULL,
|
||||
fld4 char(35) DEFAULT '' NOT NULL,
|
||||
fld5 char(35) DEFAULT '' NOT NULL,
|
||||
fld6 char(4) DEFAULT '' NOT NULL,
|
||||
primary key (auto)
|
||||
) ENGINE=blackhole;
|
||||
INSERT INTO t2 VALUES (1192,068305,00,'Colombo','hardware','colicky','');
|
||||
INSERT INTO t2 VALUES (1193,000000,00,'nondecreasing','implant','thrillingly','');
|
||||
select t2.fld3 from t2 where companynr = 58 and fld3 like "%imaginable%";
|
||||
fld3
|
||||
select fld3 from t2 where fld3 like "%cultivation" ;
|
||||
fld3
|
||||
select t2.fld3,companynr from t2 where companynr = 57+1 order by fld3;
|
||||
fld3 companynr
|
||||
select fld3,companynr from t2 where companynr = 58 order by fld3;
|
||||
fld3 companynr
|
||||
select fld3 from t2 order by fld3 desc limit 10;
|
||||
fld3
|
||||
select fld3 from t2 order by fld3 desc limit 5;
|
||||
fld3
|
||||
select fld3 from t2 order by fld3 desc limit 5,5;
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 = 'honeysuckle';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 LIKE 'honeysuckl_';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 LIKE 'hon_ysuckl_';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 LIKE 'honeysuckle%';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 LIKE 'h%le';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 LIKE 'honeysuckle_';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 LIKE 'don_t_find_me_please%';
|
||||
fld3
|
||||
select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
|
||||
fld3
|
||||
select fld1,fld3 from t2 where fld3="Colombo" or fld3 = "nondecreasing" order by fld3;
|
||||
fld1 fld3
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (a VARCHAR(200), b TEXT, FULLTEXT (a,b));
|
||||
INSERT INTO t1 VALUES('MySQL has now support', 'for full-text search'),
|
||||
('Full-text indexes', 'are called collections'),
|
||||
('Only MyISAM tables','support collections'),
|
||||
('Function MATCH ... AGAINST()','is used to do a search'),
|
||||
('Full-text search in MySQL', 'implements vector space model');
|
||||
SHOW INDEX FROM t1;
|
||||
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
|
||||
t1 1 a 1 a NULL NULL NULL NULL YES FULLTEXT
|
||||
t1 1 a 2 b NULL NULL NULL NULL YES FULLTEXT
|
||||
select * from t1 where MATCH(a,b) AGAINST ("collections");
|
||||
a b
|
||||
Only MyISAM tables support collections
|
||||
Full-text indexes are called collections
|
||||
explain extended select * from t1 where MATCH(a,b) AGAINST ("collections");
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 fulltext a a 0 1 Using where
|
||||
Warnings:
|
||||
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b` from `test`.`t1` where (match `test`.`t1`.`a`,`test`.`t1`.`b` against (_latin1'collections'))
|
||||
select * from t1 where MATCH(a,b) AGAINST ("indexes");
|
||||
a b
|
||||
Full-text indexes are called collections
|
||||
select * from t1 where MATCH(a,b) AGAINST ("indexes collections");
|
||||
a b
|
||||
Full-text indexes are called collections
|
||||
Only MyISAM tables support collections
|
||||
select * from t1 where MATCH(a,b) AGAINST ("only");
|
||||
a b
|
||||
drop table if exists t1,t2;
|
|
@ -77,3 +77,10 @@ big5_bin 6109
|
|||
big5_bin 61
|
||||
big5_bin 6120
|
||||
drop table t1;
|
||||
SET NAMES big5;
|
||||
CREATE TABLE t1 (a text) character set big5;
|
||||
INSERT INTO t1 VALUES ('ùØ');
|
||||
SELECT * FROM t1;
|
||||
a
|
||||
ùØ
|
||||
DROP TABLE t1;
|
||||
|
|
|
@ -642,3 +642,11 @@ Warnings:
|
|||
Warning 1264 Out of range value adjusted for column 'Field1' at row 1
|
||||
DROP TABLE t1;
|
||||
SET NAMES latin1;
|
||||
CREATE TABLE t1 (a varchar(64) character set ucs2, b decimal(10,3));
|
||||
INSERT INTO t1 VALUES ("1.1", 0), ("2.1", 0);
|
||||
update t1 set b=a;
|
||||
SELECT * FROM t1;
|
||||
a b
|
||||
1.1 1.100
|
||||
2.1 2.100
|
||||
DROP TABLE t1;
|
||||
|
|
|
@ -871,3 +871,17 @@ drop table t1;
|
|||
select convert(_koi8r'É' using utf8) < convert(_koi8r'Ê' using utf8);
|
||||
convert(_koi8r'É' using utf8) < convert(_koi8r'Ê' using utf8)
|
||||
1
|
||||
set names latin1;
|
||||
create table t1 (a varchar(10)) character set utf8;
|
||||
insert into t1 values ('test');
|
||||
select ifnull(a,'') from t1;
|
||||
ifnull(a,'')
|
||||
test
|
||||
drop table t1;
|
||||
select repeat(_utf8'+',3) as h union select NULL;
|
||||
h
|
||||
+++
|
||||
NULL
|
||||
select ifnull(NULL, _utf8'string');
|
||||
ifnull(NULL, _utf8'string')
|
||||
string
|
||||
|
|
|
@ -639,6 +639,26 @@ drop table t1;
|
|||
select charset(null), collation(null), coercibility(null);
|
||||
charset(null) collation(null) coercibility(null)
|
||||
binary binary 5
|
||||
CREATE TABLE t1 (a int, b int);
|
||||
CREATE TABLE t2 (a int, b int);
|
||||
INSERT INTO t1 VALUES (1,1),(2,2);
|
||||
INSERT INTO t2 VALUES (2,2),(3,3);
|
||||
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||
where collation(t2.a) = _utf8'binary' order by t1.a,t2.a;
|
||||
a b a b
|
||||
1 1 NULL NULL
|
||||
2 2 2 2
|
||||
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||
where charset(t2.a) = _utf8'binary' order by t1.a,t2.a;
|
||||
a b a b
|
||||
1 1 NULL NULL
|
||||
2 2 2 2
|
||||
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||
where coercibility(t2.a) = 2 order by t1.a,t2.a;
|
||||
a b a b
|
||||
1 1 NULL NULL
|
||||
2 2 2 2
|
||||
DROP TABLE t1, t2;
|
||||
select SUBSTR('abcdefg',3,2);
|
||||
SUBSTR('abcdefg',3,2)
|
||||
cd
|
||||
|
|
|
@ -75,4 +75,8 @@ select * from t1 where a=database();
|
|||
a
|
||||
select * from t1 where a=user();
|
||||
a
|
||||
insert into t1 values ('a');
|
||||
select left(concat(a,version()),1) from t1;
|
||||
left(concat(a,version()),1)
|
||||
a
|
||||
drop table t1;
|
||||
|
|
|
@ -10,8 +10,8 @@ GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3
|
|||
GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
|
||||
grant delete on mysqltest.* to mysqltest_1@localhost;
|
||||
select * from mysql.user where user="mysqltest_1";
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N SPECIFIED EDH-RSA-DES-CBC3-SHA 0 0 0 0
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N SPECIFIED EDH-RSA-DES-CBC3-SHA 0 0 0 0
|
||||
show grants for mysqltest_1@localhost;
|
||||
Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA'
|
||||
|
@ -41,15 +41,15 @@ delete from mysql.user where user='mysqltest_1';
|
|||
flush privileges;
|
||||
grant usage on *.* to mysqltest_1@localhost with max_queries_per_hour 10;
|
||||
select * from mysql.user where user="mysqltest_1";
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N 10 0 0 0
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N 10 0 0 0
|
||||
show grants for mysqltest_1@localhost;
|
||||
Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10
|
||||
grant usage on *.* to mysqltest_1@localhost with max_updates_per_hour 20 max_connections_per_hour 30;
|
||||
select * from mysql.user where user="mysqltest_1";
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N 10 20 30 0
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Create_user_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections max_user_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N N N N N N 10 20 30 0
|
||||
show grants for mysqltest_1@localhost;
|
||||
Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 MAX_CONNECTIONS_PER_HOUR 30
|
||||
|
@ -440,6 +440,7 @@ Create Databases,Tables,Indexes To create new databases and tables
|
|||
Create routine Functions,Procedures To use CREATE FUNCTION/PROCEDURE
|
||||
Create temporary tables Databases To use CREATE TEMPORARY TABLE
|
||||
Create view Tables To create new views
|
||||
Create user Server Admin To create new users
|
||||
Delete Tables To delete existing rows
|
||||
Drop Databases,Tables To drop databases, tables, and views
|
||||
Execute Functions,Procedures To execute stored routines
|
||||
|
|
|
@ -1,11 +1,13 @@
|
|||
SET NAMES binary;
|
||||
drop database if exists mysqltest;
|
||||
drop database if exists mysqltest_1;
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
delete from mysql.tables_priv where user like 'mysqltest\_%';
|
||||
delete from mysql.columns_priv where user like 'mysqltest\_%';
|
||||
flush privileges;
|
||||
grant all privileges on `my\_1`.* to mysqltest_1@localhost with grant option;
|
||||
grant create user on *.* to mysqltest_1@localhost;
|
||||
create user mysqltest_2@localhost;
|
||||
grant select on `my\_1`.* to mysqltest_2@localhost;
|
||||
grant select on `my\_1`.* to mysqltest_2@localhost identified by 'pass';
|
||||
|
@ -13,7 +15,6 @@ ERROR 42000: You must have privileges to update tables in the mysql database to
|
|||
grant update on mysql.* to mysqltest_1@localhost;
|
||||
grant select on `my\_1`.* to mysqltest_2@localhost identified by 'pass';
|
||||
grant select on `my\_1`.* to mysqltest_3@localhost;
|
||||
ERROR 42000: 'mysqltest_1'@'localhost' is not allowed to create new users
|
||||
grant insert on mysql.* to mysqltest_1@localhost;
|
||||
grant select on `my\_1`.* to mysqltest_3@localhost;
|
||||
grant select on `my\_1`.* to mysqltest_4@localhost identified by 'pass';
|
||||
|
@ -23,14 +24,11 @@ delete from mysql.tables_priv where user like 'mysqltest\_%';
|
|||
delete from mysql.columns_priv where user like 'mysqltest\_%';
|
||||
flush privileges;
|
||||
grant all privileges on `my\_%`.* to mysqltest_1@localhost with grant option;
|
||||
grant create user on *.* to mysqltest_1@localhost;
|
||||
select current_user();
|
||||
current_user()
|
||||
mysqltest_1@localhost
|
||||
select current_user;
|
||||
current_user
|
||||
mysqltest_1@localhost
|
||||
grant all privileges on `my\_1`.* to mysqltest_2@localhost with grant option;
|
||||
ERROR 42000: 'mysqltest_1'@'localhost' is not allowed to create new users
|
||||
grant all privileges on `my_%`.* to mysqltest_3@localhost with grant option;
|
||||
ERROR 42000: Access denied for user 'mysqltest_1'@'localhost' to database 'my_%'
|
||||
set @@sql_mode='NO_AUTO_CREATE_USER';
|
||||
|
@ -38,21 +36,41 @@ select @@sql_mode;
|
|||
@@sql_mode
|
||||
NO_AUTO_CREATE_USER
|
||||
grant select on `my\_1`.* to mysqltest_4@localhost with grant option;
|
||||
ERROR 42000: 'mysqltest_1'@'localhost' is not allowed to create new users
|
||||
ERROR 42000: Can't find any matching row in the user table
|
||||
grant select on `my\_1`.* to mysqltest_4@localhost identified by 'mypass'
|
||||
with grant option;
|
||||
ERROR 42000: 'mysqltest_1'@'localhost' is not allowed to create new users
|
||||
show grants for mysqltest_1@localhost;
|
||||
Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
|
||||
GRANT CREATE USER ON *.* TO 'mysqltest_1'@'localhost'
|
||||
GRANT ALL PRIVILEGES ON `my\_%`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
|
||||
show grants for mysqltest_2@localhost;
|
||||
ERROR 42000: There is no such grant defined for user 'mysqltest_2' on host 'localhost'
|
||||
Grants for mysqltest_2@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_2'@'localhost'
|
||||
GRANT ALL PRIVILEGES ON `my\_1`.* TO 'mysqltest_2'@'localhost' WITH GRANT OPTION
|
||||
show grants for mysqltest_3@localhost;
|
||||
ERROR 42000: There is no such grant defined for user 'mysqltest_3' on host 'localhost'
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
flush privileges;
|
||||
create database mysqltest_1;
|
||||
grant all privileges on `mysqltest\_1`.* to mysqltest_1@localhost with grant option;
|
||||
select current_user();
|
||||
current_user()
|
||||
mysqltest_1@localhost
|
||||
show databases;
|
||||
Database
|
||||
mysqltest_1
|
||||
test
|
||||
grant all privileges on `mysqltest_1`.* to mysqltest_1@localhost with grant option;
|
||||
ERROR 42000: Access denied for user 'mysqltest_1'@'localhost' to database 'mysqltest_1'
|
||||
show grants for mysqltest_1@localhost;
|
||||
Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
|
||||
GRANT ALL PRIVILEGES ON `mysqltest\_1`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
drop database mysqltest_1;
|
||||
flush privileges;
|
||||
create database mysqltest;
|
||||
grant INSERT, SELECT on mysqltest.* to mysqltest_1@localhost;
|
||||
flush privileges;
|
||||
|
@ -77,9 +95,9 @@ flush privileges;
|
|||
create table t1 (a int, b int);
|
||||
grant select (a) on t1 to mysqltest_1@localhost with grant option;
|
||||
grant select (a,b) on t1 to mysqltest_2@localhost;
|
||||
ERROR 42000: 'mysqltest_1'@'localhost' is not allowed to create new users
|
||||
ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for column 'b' in table 't1'
|
||||
grant select on t1 to mysqltest_3@localhost;
|
||||
ERROR 42000: 'mysqltest_1'@'localhost' is not allowed to create new users
|
||||
ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 't1'
|
||||
drop table t1;
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
|
@ -164,8 +182,6 @@ GRANT INSERT ON "test".* TO 'mysqltest_1'@'%'
|
|||
GRANT UPDATE (c2) ON "test"."t2" TO 'mysqltest_1'@'%'
|
||||
GRANT UPDATE ON "test"."t1" TO 'mysqltest_1'@'%'
|
||||
drop user 'mysqltest_1', 'mysqltest_3';
|
||||
grant all on test.t1 to 'mysqltest_1';
|
||||
ERROR HY000: You are not allowed to create a user with GRANT
|
||||
drop user 'mysqltest_1';
|
||||
ERROR HY000: Operation DROP USER failed for 'mysqltest_1'@'%'
|
||||
drop table t1, t2;
|
||||
|
@ -228,7 +244,7 @@ GRANT USAGE ON *.* TO '%@a'@'a'
|
|||
GRANT SELECT ON "mysql".* TO '%@a'@'a'
|
||||
drop user '%@a'@'a';
|
||||
create user mysqltest_2@localhost;
|
||||
grant usage on *.* to mysqltest_2@localhost with grant option;
|
||||
grant create user on *.* to mysqltest_2@localhost;
|
||||
select host,user,password from mysql.user where user like 'mysqltest_%' order by host,user,password;
|
||||
ERROR 42000: SELECT command denied to user 'mysqltest_2'@'localhost' for table 'user'
|
||||
create user mysqltest_A@'%';
|
||||
|
@ -236,19 +252,17 @@ rename user mysqltest_A@'%' to mysqltest_B@'%';
|
|||
drop user mysqltest_B@'%';
|
||||
drop user mysqltest_2@localhost;
|
||||
create user mysqltest_3@localhost;
|
||||
grant all privileges on mysql.* to mysqltest_3@localhost;
|
||||
grant INSERT,DELETE,UPDATE on mysql.* to mysqltest_3@localhost;
|
||||
show grants;
|
||||
Grants for mysqltest_3@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_3'@'localhost'
|
||||
GRANT INSERT, UPDATE, DELETE ON `mysql`.* TO 'mysqltest_3'@'localhost'
|
||||
select host,user,password from mysql.user where user like 'mysqltest_%' order by host,user,password;
|
||||
host user password
|
||||
% mysqltest_2 *BD447CBA355AF58578D3AE33BA2E2CD388BA08D1
|
||||
localhost mysqltest_3
|
||||
ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for table 'user'
|
||||
insert into mysql.user set host='%', user='mysqltest_B';
|
||||
create user mysqltest_A@'%';
|
||||
ERROR 42000: Access denied for user 'mysqltest_3'@'localhost' to database 'mysql'
|
||||
rename user mysqltest_B@'%' to mysqltest_C@'%';
|
||||
ERROR 42000: Access denied for user 'mysqltest_3'@'localhost' to database 'mysql'
|
||||
drop user mysqltest_B@'%';
|
||||
ERROR 42000: Access denied for user 'mysqltest_3'@'localhost' to database 'mysql'
|
||||
drop user mysqltest_B@'%';
|
||||
drop user mysqltest_C@'%';
|
||||
drop user mysqltest_3@localhost;
|
||||
set @@sql_mode='';
|
||||
create database mysqltest_1;
|
||||
|
|
|
@ -6,10 +6,11 @@ delete from mysql.tables_priv where user like 'mysqltest\_%';
|
|||
delete from mysql.columns_priv where user like 'mysqltest\_%';
|
||||
flush privileges;
|
||||
create user mysqltest_1@localhost;
|
||||
grant grant option on mysql.* to mysqltest_1@localhost;
|
||||
grant create user on *.* to mysqltest_1@localhost;
|
||||
grant select on `my\_1`.* to mysqltest_1@localhost with grant option;
|
||||
grant select on `my\_1`.* to mysqltest_2@localhost;
|
||||
ERROR HY000: You are not allowed to create a user with GRANT
|
||||
ERROR 42000: You are not allowed to create a user with GRANT
|
||||
create user mysqltest_2@localhost;
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
delete from mysql.tables_priv where user like 'mysqltest\_%';
|
||||
|
|
2
mysql-test/r/have_blackhole.require
Normal file
2
mysql-test/r/have_blackhole.require
Normal file
|
@ -0,0 +1,2 @@
|
|||
Variable_name Value
|
||||
have_blackhole_engine YES
|
|
@ -441,7 +441,7 @@ character_sets CREATE TEMPORARY TABLE `character_sets` (
|
|||
`DEFAULT_COLLATE_NAME` varchar(64) NOT NULL default '',
|
||||
`DESCRIPTION` varchar(60) NOT NULL default '',
|
||||
`MAXLEN` bigint(3) NOT NULL default '0'
|
||||
) ENGINE=MEMORY DEFAULT CHARSET=utf8 MAX_ROWS=1818
|
||||
) ENGINE=MEMORY DEFAULT CHARSET=utf8
|
||||
set names latin2;
|
||||
SHOW CREATE TABLE INFORMATION_SCHEMA.character_sets;
|
||||
Table Create Table
|
||||
|
@ -450,7 +450,7 @@ character_sets CREATE TEMPORARY TABLE `character_sets` (
|
|||
`DEFAULT_COLLATE_NAME` varchar(64) NOT NULL default '',
|
||||
`DESCRIPTION` varchar(60) NOT NULL default '',
|
||||
`MAXLEN` bigint(3) NOT NULL default '0'
|
||||
) ENGINE=MEMORY DEFAULT CHARSET=utf8 MAX_ROWS=1818
|
||||
) ENGINE=MEMORY DEFAULT CHARSET=utf8
|
||||
set names latin1;
|
||||
create table t1 select * from information_schema.CHARACTER_SETS
|
||||
where CHARACTER_SET_NAME like "latin1";
|
||||
|
@ -651,6 +651,8 @@ drop table t1, t2;
|
|||
CREATE TABLE t_crashme ( f1 BIGINT);
|
||||
CREATE VIEW a1 (t_CRASHME) AS SELECT f1 FROM t_crashme GROUP BY f1;
|
||||
CREATE VIEW a2 AS SELECT t_CRASHME FROM a1;
|
||||
count(*)
|
||||
100
|
||||
drop view a2, a1;
|
||||
drop table t_crashme;
|
||||
select table_schema,table_name, column_name from
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
drop table if exists t1,t2;
|
||||
select 1, 1.0, -1, "hello", NULL;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def 1 8 1 1 N 32897 0 63
|
||||
def 1.0 246 4 3 N 161 1 63
|
||||
def -1 8 2 2 N 32897 0 63
|
||||
|
@ -10,7 +10,7 @@ def NULL 6 0 0 Y 32896 0 63
|
|||
1 1.0 -1 hello NULL
|
||||
create table t1 (a tinyint, b smallint, c mediumint, d int, e bigint, f float(3,2), g double(4,3), h decimal(5,4), i year, j date, k timestamp, l datetime, m enum('a','b'), n set('a','b'), o char(10));
|
||||
select * from t1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t1 t1 a a 1 4 0 Y 32768 0 63
|
||||
def test t1 t1 b b 2 6 0 Y 32768 0 63
|
||||
def test t1 t1 c c 9 9 0 Y 32768 0 63
|
||||
|
@ -28,7 +28,7 @@ def test t1 t1 n n 254 3 0 Y 2048 0 8
|
|||
def test t1 t1 o o 254 10 0 Y 0 0 8
|
||||
a b c d e f g h i j k l m n o
|
||||
select a b, b c from t1 as t2;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t1 t2 a b 1 4 0 Y 32768 0 63
|
||||
def test t1 t2 b c 2 6 0 Y 32768 0 63
|
||||
b c
|
||||
|
@ -38,7 +38,7 @@ INSERT INTO t1 VALUES (1,'male'),(2,'female');
|
|||
CREATE TABLE t2 (id tinyint(3) unsigned default NULL, data char(3) default '0');
|
||||
INSERT INTO t2 VALUES (1,'yes'),(2,'no');
|
||||
select t1.id, t1.data, t2.data from t1, t2 where t1.id = t2.id;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t1 t1 id id 1 3 1 Y 32768 0 63
|
||||
def test t1 t1 data data 253 255 6 Y 0 0 8
|
||||
def test t2 t2 data data 254 3 3 Y 0 0 8
|
||||
|
@ -46,7 +46,7 @@ id data data
|
|||
1 male yes
|
||||
2 female no
|
||||
select t1.id, t1.data, t2.data from t1, t2 where t1.id = t2.id order by t1.id;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t1 t1 id id 1 3 1 Y 32768 0 63
|
||||
def test t1 t1 data data 253 255 6 Y 0 0 8
|
||||
def test t2 t2 data data 254 3 3 Y 0 0 8
|
||||
|
@ -54,7 +54,7 @@ id data data
|
|||
1 male yes
|
||||
2 female no
|
||||
select t1.id from t1 union select t2.id from t2;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t1 t1 id id 1 3 1 Y 32768 0 63
|
||||
id
|
||||
1
|
||||
|
|
|
@ -9,9 +9,9 @@ commit;
|
|||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(1)
|
||||
master-bin.000001 255 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 350 Xid 1 # COMMIT /* xid=7 */
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(1)
|
||||
master-bin.000001 253 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 347 Xid 1 # COMMIT /* xid=7 */
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
|
@ -24,9 +24,9 @@ Warning 1196 Some non-transactional changed tables couldn't be rolled back
|
|||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(2)
|
||||
master-bin.000001 255 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 350 Query 1 # use `test`; ROLLBACK
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(2)
|
||||
master-bin.000001 253 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 347 Query 1 # use `test`; ROLLBACK
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
|
@ -42,12 +42,12 @@ commit;
|
|||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(3)
|
||||
master-bin.000001 255 Query 1 # use `test`; savepoint my_savepoint
|
||||
master-bin.000001 341 Query 1 # use `test`; insert into t1 values(4)
|
||||
master-bin.000001 429 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 524 Query 1 # use `test`; rollback to savepoint my_savepoint
|
||||
master-bin.000001 622 Xid 1 # COMMIT /* xid=24 */
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(3)
|
||||
master-bin.000001 253 Query 1 # use `test`; savepoint my_savepoint
|
||||
master-bin.000001 338 Query 1 # use `test`; insert into t1 values(4)
|
||||
master-bin.000001 425 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 519 Query 1 # use `test`; rollback to savepoint my_savepoint
|
||||
master-bin.000001 616 Xid 1 # COMMIT /* xid=24 */
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
|
@ -68,13 +68,13 @@ a
|
|||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(5)
|
||||
master-bin.000001 255 Query 1 # use `test`; savepoint my_savepoint
|
||||
master-bin.000001 341 Query 1 # use `test`; insert into t1 values(6)
|
||||
master-bin.000001 429 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 524 Query 1 # use `test`; rollback to savepoint my_savepoint
|
||||
master-bin.000001 622 Query 1 # use `test`; insert into t1 values(7)
|
||||
master-bin.000001 710 Xid 1 # COMMIT /* xid=36 */
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(5)
|
||||
master-bin.000001 253 Query 1 # use `test`; savepoint my_savepoint
|
||||
master-bin.000001 338 Query 1 # use `test`; insert into t1 values(6)
|
||||
master-bin.000001 425 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 519 Query 1 # use `test`; rollback to savepoint my_savepoint
|
||||
master-bin.000001 616 Query 1 # use `test`; insert into t1 values(7)
|
||||
master-bin.000001 703 Xid 1 # COMMIT /* xid=36 */
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
|
@ -90,9 +90,9 @@ get_lock("a",10)
|
|||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(8)
|
||||
master-bin.000001 255 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 350 Query 1 # use `test`; ROLLBACK
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(8)
|
||||
master-bin.000001 253 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 347 Query 1 # use `test`; ROLLBACK
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
|
@ -101,8 +101,8 @@ insert into t2 select * from t1;
|
|||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; insert into t1 values(9)
|
||||
master-bin.000001 186 Xid 1 # COMMIT /* xid=59 */
|
||||
master-bin.000001 213 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 185 Xid 1 # COMMIT /* xid=59 */
|
||||
master-bin.000001 212 Query 1 # use `test`; insert into t2 select * from t1
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
|
@ -112,18 +112,18 @@ insert into t2 select * from t1;
|
|||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; insert into t1 values(10)
|
||||
master-bin.000001 187 Xid 1 # COMMIT /* xid=65 */
|
||||
master-bin.000001 214 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 186 Xid 1 # COMMIT /* xid=65 */
|
||||
master-bin.000001 213 Query 1 # use `test`; insert into t2 select * from t1
|
||||
insert into t1 values(11);
|
||||
commit;
|
||||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; insert into t1 values(10)
|
||||
master-bin.000001 187 Xid 1 # COMMIT /* xid=65 */
|
||||
master-bin.000001 214 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 309 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 378 Query 1 # use `test`; insert into t1 values(11)
|
||||
master-bin.000001 467 Xid 1 # COMMIT /* xid=67 */
|
||||
master-bin.000001 186 Xid 1 # COMMIT /* xid=65 */
|
||||
master-bin.000001 213 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 307 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 375 Query 1 # use `test`; insert into t1 values(11)
|
||||
master-bin.000001 463 Xid 1 # COMMIT /* xid=67 */
|
||||
alter table t2 engine=INNODB;
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
|
@ -135,9 +135,9 @@ commit;
|
|||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(12)
|
||||
master-bin.000001 256 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 351 Xid 1 # COMMIT /* xid=77 */
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(12)
|
||||
master-bin.000001 254 Query 1 # use `test`; insert into t2 select * from t1
|
||||
master-bin.000001 348 Xid 1 # COMMIT /* xid=77 */
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
|
@ -160,8 +160,8 @@ commit;
|
|||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(14)
|
||||
master-bin.000001 256 Xid 1 # COMMIT /* xid=93 */
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(14)
|
||||
master-bin.000001 254 Xid 1 # COMMIT /* xid=93 */
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
reset master;
|
||||
|
@ -180,9 +180,9 @@ a
|
|||
show binlog events from 98;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 # use `test`; BEGIN
|
||||
master-bin.000001 167 Query 1 # use `test`; insert into t1 values(16)
|
||||
master-bin.000001 256 Query 1 # use `test`; insert into t1 values(18)
|
||||
master-bin.000001 345 Xid 1 # COMMIT /* xid=104 */
|
||||
master-bin.000001 166 Query 1 # use `test`; insert into t1 values(16)
|
||||
master-bin.000001 254 Query 1 # use `test`; insert into t1 values(18)
|
||||
master-bin.000001 342 Xid 1 # COMMIT /* xid=104 */
|
||||
delete from t1;
|
||||
delete from t2;
|
||||
alter table t2 type=MyISAM;
|
||||
|
|
|
@ -342,6 +342,7 @@ EXAMPLE YES/NO Example storage engine
|
|||
ARCHIVE YES/NO Archive storage engine
|
||||
CSV YES/NO CSV storage engine
|
||||
FEDERATED YES/NO Federated MySQL storage engine
|
||||
BLACKHOLE YES/NO Storage engine designed to act as null storage
|
||||
drop table if exists t5;
|
||||
prepare stmt1 from ' drop table if exists t5 ' ;
|
||||
execute stmt1 ;
|
||||
|
@ -483,7 +484,7 @@ prepare stmt1 from ' KILL 0 ';
|
|||
ERROR HY000: This command is not supported in the prepared statement protocol yet
|
||||
prepare stmt1 from ' explain select a from t1 order by b ';
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
|
@ -499,7 +500,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
|||
SET @arg00=1 ;
|
||||
prepare stmt1 from ' explain select a from t1 where a > ? order by b ';
|
||||
execute stmt1 using @arg00;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
|
|
|
@ -48,7 +48,7 @@ test_sequence
|
|||
------ simple select tests ------
|
||||
prepare stmt1 from ' select * from t9 order by c1 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t9 t9 c1 c1 1 4 1 N 49155 0 63
|
||||
def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
|
||||
def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
|
||||
|
@ -1144,7 +1144,7 @@ test_sequence
|
|||
------ explain select tests ------
|
||||
prepare stmt1 from ' explain select * from t9 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
|
@ -1799,7 +1799,7 @@ t5 CREATE TABLE `t5` (
|
|||
`param15` longblob
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t5 ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
|
||||
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
|
||||
def test t5 t5 const02 const02 246 3 3 N 1 1 63
|
||||
|
@ -1911,7 +1911,7 @@ from t9 where c1= 1 ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -1958,7 +1958,7 @@ from t9 where c1= 0 ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -2008,7 +2008,7 @@ execute stmt1 using @my_key ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2048,7 +2048,7 @@ execute stmt1 using @my_key ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -2096,7 +2096,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
|||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 1 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2140,7 +2140,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
|||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 0 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -2186,7 +2186,7 @@ from t9 where c1= ?" ;
|
|||
set @my_key= 1 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2224,7 +2224,7 @@ def @arg32 253 8192 6 Y 0 31 8
|
|||
set @my_key= 0 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
|
|
@ -48,7 +48,7 @@ test_sequence
|
|||
------ simple select tests ------
|
||||
prepare stmt1 from ' select * from t9 order by c1 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t9 t9 c1 c1 1 4 1 N 49155 0 63
|
||||
def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
|
||||
def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
|
||||
|
@ -1144,7 +1144,7 @@ test_sequence
|
|||
------ explain select tests ------
|
||||
prepare stmt1 from ' explain select * from t9 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
|
@ -1782,7 +1782,7 @@ t5 CREATE TABLE `t5` (
|
|||
`param15` longblob
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t5 ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
|
||||
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
|
||||
def test t5 t5 const02 const02 246 3 3 N 1 1 63
|
||||
|
@ -1894,7 +1894,7 @@ from t9 where c1= 1 ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -1941,7 +1941,7 @@ from t9 where c1= 0 ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -1991,7 +1991,7 @@ execute stmt1 using @my_key ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2031,7 +2031,7 @@ execute stmt1 using @my_key ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -2079,7 +2079,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
|||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 1 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2123,7 +2123,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
|||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 0 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -2169,7 +2169,7 @@ from t9 where c1= ?" ;
|
|||
set @my_key= 1 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2207,7 +2207,7 @@ def @arg32 253 8192 6 Y 0 31 8
|
|||
set @my_key= 0 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
|
|
@ -49,7 +49,7 @@ test_sequence
|
|||
------ simple select tests ------
|
||||
prepare stmt1 from ' select * from t9 order by c1 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t9 t9 c1 c1 1 4 1 N 49155 0 63
|
||||
def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
|
||||
def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
|
||||
|
@ -1145,7 +1145,7 @@ test_sequence
|
|||
------ explain select tests ------
|
||||
prepare stmt1 from ' explain select * from t9 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
|
@ -1783,7 +1783,7 @@ t5 CREATE TABLE `t5` (
|
|||
`param15` longblob
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t5 ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
|
||||
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
|
||||
def test t5 t5 const02 const02 246 3 3 N 1 1 63
|
||||
|
@ -1895,7 +1895,7 @@ from t9 where c1= 1 ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -1942,7 +1942,7 @@ from t9 where c1= 0 ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -1992,7 +1992,7 @@ execute stmt1 using @my_key ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2032,7 +2032,7 @@ execute stmt1 using @my_key ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -2080,7 +2080,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
|||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 1 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2124,7 +2124,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
|||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 0 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -2170,7 +2170,7 @@ from t9 where c1= ?" ;
|
|||
set @my_key= 1 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2208,7 +2208,7 @@ def @arg32 253 8192 6 Y 0 31 8
|
|||
set @my_key= 0 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
|
|
@ -91,7 +91,7 @@ test_sequence
|
|||
------ simple select tests ------
|
||||
prepare stmt1 from ' select * from t9 order by c1 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t9 t9 c1 c1 1 4 1 N 49155 0 63
|
||||
def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
|
||||
def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
|
||||
|
@ -1187,7 +1187,7 @@ test_sequence
|
|||
------ explain select tests ------
|
||||
prepare stmt1 from ' explain select * from t9 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
|
@ -1719,7 +1719,7 @@ t5 CREATE TABLE `t5` (
|
|||
`param15` longblob
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t5 ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
|
||||
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
|
||||
def test t5 t5 const02 const02 246 3 3 N 1 1 63
|
||||
|
@ -1831,7 +1831,7 @@ from t9 where c1= 1 ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -1878,7 +1878,7 @@ from t9 where c1= 0 ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -1928,7 +1928,7 @@ execute stmt1 using @my_key ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -1968,7 +1968,7 @@ execute stmt1 using @my_key ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -2016,7 +2016,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
|||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 1 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2060,7 +2060,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
|||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 0 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -2106,7 +2106,7 @@ from t9 where c1= ?" ;
|
|||
set @my_key= 1 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2144,7 +2144,7 @@ def @arg32 253 8192 6 Y 0 31 8
|
|||
set @my_key= 0 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -3100,7 +3100,7 @@ test_sequence
|
|||
------ simple select tests ------
|
||||
prepare stmt1 from ' select * from t9 order by c1 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t9 t9 c1 c1 1 4 1 N 49155 0 63
|
||||
def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
|
||||
def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
|
||||
|
@ -4196,7 +4196,7 @@ test_sequence
|
|||
------ explain select tests ------
|
||||
prepare stmt1 from ' explain select * from t9 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
|
@ -4728,7 +4728,7 @@ t5 CREATE TABLE `t5` (
|
|||
`param15` longblob
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t5 ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
|
||||
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
|
||||
def test t5 t5 const02 const02 246 3 3 N 1 1 63
|
||||
|
@ -4840,7 +4840,7 @@ from t9 where c1= 1 ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -4887,7 +4887,7 @@ from t9 where c1= 0 ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -4937,7 +4937,7 @@ execute stmt1 using @my_key ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -4977,7 +4977,7 @@ execute stmt1 using @my_key ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -5025,7 +5025,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
|||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 1 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -5069,7 +5069,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
|||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 0 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -5115,7 +5115,7 @@ from t9 where c1= ?" ;
|
|||
set @my_key= 1 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -5153,7 +5153,7 @@ def @arg32 253 8192 6 Y 0 31 8
|
|||
set @my_key= 0 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
|
|
@ -48,7 +48,7 @@ test_sequence
|
|||
------ simple select tests ------
|
||||
prepare stmt1 from ' select * from t9 order by c1 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t9 t9 c1 c1 1 4 1 N 49155 0 63
|
||||
def test t9 t9 c2 c2 2 6 1 Y 32768 0 63
|
||||
def test t9 t9 c3 c3 9 9 1 Y 32768 0 63
|
||||
|
@ -1144,7 +1144,7 @@ test_sequence
|
|||
------ explain select tests ------
|
||||
prepare stmt1 from ' explain select * from t9 ' ;
|
||||
execute stmt1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def id 8 3 1 N 32929 0 63
|
||||
def select_type 253 19 6 N 1 31 8
|
||||
def table 253 64 2 N 1 31 8
|
||||
|
@ -1782,7 +1782,7 @@ t5 CREATE TABLE `t5` (
|
|||
`param15` longblob
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t5 ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t5 t5 const01 const01 8 1 1 N 32769 0 63
|
||||
def test t5 t5 param01 param01 8 20 1 Y 32768 0 63
|
||||
def test t5 t5 const02 const02 246 3 3 N 1 1 63
|
||||
|
@ -1894,7 +1894,7 @@ from t9 where c1= 1 ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -1941,7 +1941,7 @@ from t9 where c1= 0 ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -1991,7 +1991,7 @@ execute stmt1 using @my_key ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2031,7 +2031,7 @@ execute stmt1 using @my_key ;
|
|||
@arg01:= c1 @arg02:= c2 @arg03:= c3 @arg04:= c4 @arg05:= c5 @arg06:= c6 @arg07:= c7 @arg08:= c8 @arg09:= c9 @arg10:= c10 @arg11:= c11 @arg12:= c12 @arg13:= c13 @arg14:= c14 @arg15:= c15 @arg16:= c16 @arg17:= c17 @arg18:= c18 @arg19:= c19 @arg20:= c20 @arg21:= c21 @arg22:= c22 @arg23:= c23 @arg24:= c24 @arg25:= c25 @arg26:= c26 @arg27:= c27 @arg28:= c28 @arg29:= c29 @arg30:= c30 @arg31:= c31 @arg32:= c32
|
||||
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -2079,7 +2079,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
|||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 1 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2123,7 +2123,7 @@ into @arg01, @arg02, @arg03, @arg04, @arg05, @arg06, @arg07, @arg08,
|
|||
@arg25, @arg26, @arg27, @arg28, @arg29, @arg30, @arg31, @arg32
|
||||
from t9 where c1= 0 ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
@ -2169,7 +2169,7 @@ from t9 where c1= ?" ;
|
|||
set @my_key= 1 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 1 Y 128 31 63
|
||||
def @arg03 253 20 1 Y 128 31 63
|
||||
|
@ -2207,7 +2207,7 @@ def @arg32 253 8192 6 Y 0 31 8
|
|||
set @my_key= 0 ;
|
||||
execute stmt1 using @my_key ;
|
||||
execute full_info ;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def @arg01 253 20 1 Y 128 31 63
|
||||
def @arg02 253 20 0 Y 128 31 63
|
||||
def @arg03 253 20 0 Y 128 31 63
|
||||
|
|
|
@ -13,11 +13,11 @@ insert into t1 values(2);
|
|||
stop slave;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 360 # # master-bin.000001 No No 0 0 184 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 357 # # master-bin.000001 No No 0 0 183 # None 0 No #
|
||||
change master to master_user='root';
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 184 # # master-bin.000001 No No 0 0 184 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 183 # # master-bin.000001 No No 0 0 183 # None 0 No #
|
||||
start slave;
|
||||
select * from t1;
|
||||
n
|
||||
|
|
|
@ -8,6 +8,9 @@ create table t1 (a int not null, key(a)) engine=innodb;
|
|||
create table t2 (a int not null, key(a)) engine=innodb;
|
||||
create table t3 (a int) engine=innodb;
|
||||
create table t4 (a int) engine=innodb;
|
||||
show variables like 'slave_transaction_retries';
|
||||
Variable_name Value
|
||||
slave_transaction_retries 10
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
|
@ -20,6 +23,9 @@ t2 CREATE TABLE `t2` (
|
|||
`a` int(11) NOT NULL,
|
||||
KEY `a` (`a`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1
|
||||
show variables like 'slave_transaction_retries';
|
||||
Variable_name Value
|
||||
slave_transaction_retries 2
|
||||
stop slave;
|
||||
begin;
|
||||
insert into t3 select * from t2 for update;
|
||||
|
@ -39,9 +45,9 @@ a
|
|||
22
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 19118 # # master-bin.000001 Yes Yes 0 0 19118 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 18911 # # master-bin.000001 Yes Yes 0 0 18911 # None 0 No #
|
||||
stop slave;
|
||||
change master to master_log_pos=536;
|
||||
change master to master_log_pos=532;
|
||||
begin;
|
||||
select * from t2 for update;
|
||||
a
|
||||
|
@ -57,10 +63,10 @@ a
|
|||
22
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 19118 # # master-bin.000001 Yes Yes 0 0 19118 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 18911 # # master-bin.000001 Yes Yes 0 0 18911 # None 0 No #
|
||||
set global max_relay_log_size=0;
|
||||
stop slave;
|
||||
change master to master_log_pos=536;
|
||||
change master to master_log_pos=532;
|
||||
begin;
|
||||
select * from t2 for update;
|
||||
a
|
||||
|
@ -77,5 +83,5 @@ a
|
|||
22
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 19118 # # master-bin.000001 Yes Yes 0 0 19118 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 18911 # # master-bin.000001 Yes Yes 0 0 18911 # None 0 No #
|
||||
drop table t1,t2;
|
||||
|
|
|
@ -10,3 +10,4 @@ create temporary table mysqltest.t2 (n int);
|
|||
show status like 'Slave_open_temp_tables';
|
||||
Variable_name Value
|
||||
Slave_open_temp_tables 0
|
||||
drop database mysqltest;
|
||||
|
|
|
@ -9,7 +9,7 @@ insert into t1 values (1),(1);
|
|||
ERROR 23000: Duplicate entry '1' for key 1
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 290 # # master-bin.000001 Yes Yes test.t3,test.t1,test.t2 0 0 290 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 288 # # master-bin.000001 Yes Yes test.t3,test.t1,test.t2 0 0 288 # None 0 No #
|
||||
show tables like 't1';
|
||||
Tables_in_test (t1)
|
||||
drop table t1;
|
||||
|
|
|
@ -14,4 +14,4 @@ start slave;
|
|||
flush logs;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root SLAVE_PORT 60 slave-bin.000001 209 # # slave-bin.000001 Yes Yes 0 0 209 # None 0 No #
|
||||
# 127.0.0.1 root SLAVE_PORT 60 slave-bin.000001 208 # # slave-bin.000001 Yes Yes 0 0 208 # None 0 No #
|
||||
|
|
|
@ -22,7 +22,7 @@ day id category name
|
|||
2003-03-22 2416 a bbbbb
|
||||
show master status;
|
||||
File Position Binlog_Do_DB Binlog_Ignore_DB
|
||||
slave-bin.000001 1292
|
||||
slave-bin.000001 1286
|
||||
drop table t1;
|
||||
drop table t2;
|
||||
drop table t3;
|
||||
|
@ -33,7 +33,7 @@ set global sql_slave_skip_counter=1;
|
|||
start slave;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1800 # # master-bin.000001 Yes Yes 0 0 1800 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1789 # # master-bin.000001 Yes Yes 0 0 1789 # None 0 No #
|
||||
set sql_log_bin=0;
|
||||
delete from t1;
|
||||
set sql_log_bin=1;
|
||||
|
@ -43,7 +43,7 @@ change master to master_user='test';
|
|||
change master to master_user='root';
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1835 # # master-bin.000001 No No 0 0 1835 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1824 # # master-bin.000001 No No 0 0 1824 # None 0 No #
|
||||
set global sql_slave_skip_counter=1;
|
||||
start slave;
|
||||
set sql_log_bin=0;
|
||||
|
@ -57,12 +57,25 @@ Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File
|
|||
# 127.0.0.1 root MASTER_PORT 1 4 # # No No 0 0 0 # None 0 No #
|
||||
reset master;
|
||||
create table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60),
|
||||
unique(day));
|
||||
unique(day)) engine=MyISAM;
|
||||
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields
|
||||
terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by
|
||||
'\n##\n' starting by '>' ignore 1 lines;
|
||||
ERROR 23000: Duplicate entry '2003-03-22' for key 1
|
||||
select * from t2;
|
||||
day id category name
|
||||
2003-02-22 2461 b a a a @ % ' " a
|
||||
2003-03-22 2161 c asdf
|
||||
start slave;
|
||||
select * from t2;
|
||||
day id category name
|
||||
2003-02-22 2461 b a a a @ % ' " a
|
||||
2003-03-22 2161 c asdf
|
||||
alter table t2 drop key day;
|
||||
delete from t2;
|
||||
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields
|
||||
terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by
|
||||
'\n##\n' starting by '>' ignore 1 lines;
|
||||
ERROR 23000: Duplicate entry '2003-03-22' for key 1
|
||||
show master status;
|
||||
File Position Binlog_Do_DB Binlog_Ignore_DB
|
||||
master-bin.000001 441
|
||||
drop table t2;
|
||||
drop table t2;
|
||||
|
|
|
@ -20,24 +20,24 @@ drop table t1;
|
|||
show binlog events;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
|
||||
master-bin.000001 98 Query 1 220 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 220 Intvar 1 248 INSERT_ID=1
|
||||
master-bin.000001 248 Query 1 340 use `test`; insert into t1 values (NULL)
|
||||
master-bin.000001 340 Query 1 417 use `test`; drop table t1
|
||||
master-bin.000001 417 Query 1 521 use `test`; create table t1 (word char(20) not null)
|
||||
master-bin.000001 521 Begin_load_query 1 1125 ;file_id=1;block_len=581
|
||||
master-bin.000001 1125 Execute_load_query 1 1274 use `test`; load data infile '../../std_data/words.dat' into table t1 ignore 1 lines ;file_id=1
|
||||
master-bin.000001 1274 Query 1 1351 use `test`; drop table t1
|
||||
master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 219 Intvar 1 247 INSERT_ID=1
|
||||
master-bin.000001 247 Query 1 338 use `test`; insert into t1 values (NULL)
|
||||
master-bin.000001 338 Query 1 414 use `test`; drop table t1
|
||||
master-bin.000001 414 Query 1 517 use `test`; create table t1 (word char(20) not null)
|
||||
master-bin.000001 517 Begin_load_query 1 1121 ;file_id=1;block_len=581
|
||||
master-bin.000001 1121 Execute_load_query 1 1269 use `test`; load data infile '../../std_data/words.dat' into table t1 ignore 1 lines ;file_id=1
|
||||
master-bin.000001 1269 Query 1 1345 use `test`; drop table t1
|
||||
show binlog events from 98 limit 1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 220 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
show binlog events from 98 limit 2;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 98 Query 1 220 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 220 Intvar 1 248 INSERT_ID=1
|
||||
master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 219 Intvar 1 247 INSERT_ID=1
|
||||
show binlog events from 98 limit 2,1;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 248 Query 1 340 use `test`; insert into t1 values (NULL)
|
||||
master-bin.000001 247 Query 1 338 use `test`; insert into t1 values (NULL)
|
||||
flush logs;
|
||||
create table t5 (a int);
|
||||
drop table t5;
|
||||
|
@ -50,23 +50,23 @@ drop table t1;
|
|||
show binlog events;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
|
||||
master-bin.000001 98 Query 1 220 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 220 Intvar 1 248 INSERT_ID=1
|
||||
master-bin.000001 248 Query 1 340 use `test`; insert into t1 values (NULL)
|
||||
master-bin.000001 340 Query 1 417 use `test`; drop table t1
|
||||
master-bin.000001 417 Query 1 521 use `test`; create table t1 (word char(20) not null)
|
||||
master-bin.000001 521 Begin_load_query 1 1125 ;file_id=1;block_len=581
|
||||
master-bin.000001 1125 Execute_load_query 1 1274 use `test`; load data infile '../../std_data/words.dat' into table t1 ignore 1 lines ;file_id=1
|
||||
master-bin.000001 1274 Query 1 1351 use `test`; drop table t1
|
||||
master-bin.000001 1351 Rotate 1 1395 master-bin.000002;pos=4
|
||||
master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 219 Intvar 1 247 INSERT_ID=1
|
||||
master-bin.000001 247 Query 1 338 use `test`; insert into t1 values (NULL)
|
||||
master-bin.000001 338 Query 1 414 use `test`; drop table t1
|
||||
master-bin.000001 414 Query 1 517 use `test`; create table t1 (word char(20) not null)
|
||||
master-bin.000001 517 Begin_load_query 1 1121 ;file_id=1;block_len=581
|
||||
master-bin.000001 1121 Execute_load_query 1 1269 use `test`; load data infile '../../std_data/words.dat' into table t1 ignore 1 lines ;file_id=1
|
||||
master-bin.000001 1269 Query 1 1345 use `test`; drop table t1
|
||||
master-bin.000001 1345 Rotate 1 1389 master-bin.000002;pos=4
|
||||
show binlog events in 'master-bin.000002';
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000002 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
|
||||
master-bin.000002 98 Query 1 185 use `test`; create table t5 (a int)
|
||||
master-bin.000002 185 Query 1 262 use `test`; drop table t5
|
||||
master-bin.000002 262 Query 1 349 use `test`; create table t1 (n int)
|
||||
master-bin.000002 349 Query 1 438 use `test`; insert into t1 values (1)
|
||||
master-bin.000002 438 Query 1 515 use `test`; drop table t1
|
||||
master-bin.000002 98 Query 1 184 use `test`; create table t5 (a int)
|
||||
master-bin.000002 184 Query 1 260 use `test`; drop table t5
|
||||
master-bin.000002 260 Query 1 346 use `test`; create table t1 (n int)
|
||||
master-bin.000002 346 Query 1 434 use `test`; insert into t1 values (1)
|
||||
master-bin.000002 434 Query 1 510 use `test`; drop table t1
|
||||
show binary logs;
|
||||
Log_name
|
||||
master-bin.000001
|
||||
|
@ -79,25 +79,25 @@ slave-bin.000002
|
|||
show binlog events in 'slave-bin.000001' from 4;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
slave-bin.000001 4 Format_desc 2 98 Server ver: VERSION, Binlog ver: 4
|
||||
slave-bin.000001 98 Query 1 220 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
slave-bin.000001 220 Intvar 1 248 INSERT_ID=1
|
||||
slave-bin.000001 248 Query 1 340 use `test`; insert into t1 values (NULL)
|
||||
slave-bin.000001 340 Query 1 417 use `test`; drop table t1
|
||||
slave-bin.000001 417 Query 1 521 use `test`; create table t1 (word char(20) not null)
|
||||
slave-bin.000001 521 Begin_load_query 1 1125 ;file_id=1;block_len=581
|
||||
slave-bin.000001 1125 Execute_load_query 1 1283 use `test`; load data INFILE '../../var/tmp/SQL_LOAD-2-1-1.data' INTO table t1 ignore 1 lines ;file_id=1
|
||||
slave-bin.000001 1283 Query 1 1360 use `test`; drop table t1
|
||||
slave-bin.000001 1360 Query 1 1447 use `test`; create table t5 (a int)
|
||||
slave-bin.000001 1447 Query 1 1524 use `test`; drop table t5
|
||||
slave-bin.000001 1524 Rotate 2 1567 slave-bin.000002;pos=4
|
||||
slave-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
slave-bin.000001 219 Intvar 1 247 INSERT_ID=1
|
||||
slave-bin.000001 247 Query 1 338 use `test`; insert into t1 values (NULL)
|
||||
slave-bin.000001 338 Query 1 414 use `test`; drop table t1
|
||||
slave-bin.000001 414 Query 1 517 use `test`; create table t1 (word char(20) not null)
|
||||
slave-bin.000001 517 Begin_load_query 1 1121 ;file_id=1;block_len=581
|
||||
slave-bin.000001 1121 Execute_load_query 1 1278 use `test`; load data INFILE '../../var/tmp/SQL_LOAD-2-1-1.data' INTO table t1 ignore 1 lines ;file_id=1
|
||||
slave-bin.000001 1278 Query 1 1354 use `test`; drop table t1
|
||||
slave-bin.000001 1354 Query 1 1440 use `test`; create table t5 (a int)
|
||||
slave-bin.000001 1440 Query 1 1516 use `test`; drop table t5
|
||||
slave-bin.000001 1516 Rotate 2 1559 slave-bin.000002;pos=4
|
||||
show binlog events in 'slave-bin.000002' from 4;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
slave-bin.000002 4 Format_desc 2 98 Server ver: VERSION, Binlog ver: 4
|
||||
slave-bin.000002 98 Query 1 185 use `test`; create table t1 (n int)
|
||||
slave-bin.000002 185 Query 1 274 use `test`; insert into t1 values (1)
|
||||
slave-bin.000002 274 Query 1 351 use `test`; drop table t1
|
||||
slave-bin.000002 98 Query 1 184 use `test`; create table t1 (n int)
|
||||
slave-bin.000002 184 Query 1 272 use `test`; insert into t1 values (1)
|
||||
slave-bin.000002 272 Query 1 348 use `test`; drop table t1
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000002 515 # # master-bin.000002 Yes Yes 0 0 515 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000002 510 # # master-bin.000002 Yes Yes 0 0 510 # None 0 No #
|
||||
show binlog events in 'slave-bin.000005' from 4;
|
||||
ERROR HY000: Error when executing command SHOW BINLOG EVENTS: Could not find target log
|
||||
|
|
|
@ -16,7 +16,7 @@ select @@global.max_relay_log_size;
|
|||
start slave;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73754 # # master-bin.000001 Yes Yes 0 0 73754 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 72952 # # master-bin.000001 Yes Yes 0 0 72952 # None 0 No #
|
||||
stop slave;
|
||||
reset slave;
|
||||
set global max_relay_log_size=(5*4096);
|
||||
|
@ -26,7 +26,7 @@ select @@global.max_relay_log_size;
|
|||
start slave;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73754 # # master-bin.000001 Yes Yes 0 0 73754 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 72952 # # master-bin.000001 Yes Yes 0 0 72952 # None 0 No #
|
||||
stop slave;
|
||||
reset slave;
|
||||
set global max_relay_log_size=0;
|
||||
|
@ -36,7 +36,7 @@ select @@global.max_relay_log_size;
|
|||
start slave;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73754 # # master-bin.000001 Yes Yes 0 0 73754 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 72952 # # master-bin.000001 Yes Yes 0 0 72952 # None 0 No #
|
||||
stop slave;
|
||||
reset slave;
|
||||
flush logs;
|
||||
|
@ -49,12 +49,12 @@ flush logs;
|
|||
create table t1 (a int);
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73841 # # master-bin.000001 Yes Yes 0 0 73841 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73038 # # master-bin.000001 Yes Yes 0 0 73038 # None 0 No #
|
||||
flush logs;
|
||||
drop table t1;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73918 # # master-bin.000001 Yes Yes 0 0 73918 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 73114 # # master-bin.000001 Yes Yes 0 0 73114 # None 0 No #
|
||||
flush logs;
|
||||
show master status;
|
||||
File Position Binlog_Do_DB Binlog_Ignore_DB
|
||||
|
|
|
@ -18,5 +18,5 @@ max(a)
|
|||
8000
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 743188 # # master-bin.000001 Yes Yes 0 0 743188 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 735186 # # master-bin.000001 Yes Yes 0 0 735186 # None 0 No #
|
||||
drop table t1;
|
||||
|
|
|
@ -28,4 +28,4 @@ ERROR 42S02: Table 'test.t11' doesn't exist
|
|||
drop table if exists t1,t2,t11;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1668 # # master-bin.000001 Yes Yes test.t1 0 0 1668 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1658 # # master-bin.000001 Yes Yes test.t1 0 0 1658 # None 0 No #
|
||||
|
|
|
@ -16,7 +16,7 @@ create table t1 (s text);
|
|||
insert into t1 values('Could not break slave'),('Tried hard');
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 60 master-bin.000001 552 # # master-bin.000001 Yes Yes 0 0 552 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 60 master-bin.000001 548 # # master-bin.000001 Yes Yes 0 0 548 # None 0 No #
|
||||
select * from t1;
|
||||
s
|
||||
Could not break slave
|
||||
|
@ -57,7 +57,7 @@ master-bin.000003
|
|||
insert into t2 values (65);
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 60 master-bin.000003 500 # # master-bin.000003 Yes Yes 0 0 500 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 60 master-bin.000003 496 # # master-bin.000003 Yes Yes 0 0 496 # None 0 No #
|
||||
select * from t2;
|
||||
m
|
||||
34
|
||||
|
@ -79,13 +79,13 @@ master-bin.000004
|
|||
master-bin.000005
|
||||
show master status;
|
||||
File Position Binlog_Do_DB Binlog_Ignore_DB
|
||||
master-bin.000005 2146
|
||||
master-bin.000005 2032
|
||||
select * from t4;
|
||||
a
|
||||
testing temporary tables part 2
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_PORT 60 master-bin.000005 2146 # # master-bin.000005 Yes Yes 0 0 2146 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_PORT 60 master-bin.000005 2032 # # master-bin.000005 Yes Yes 0 0 2032 # None 0 No #
|
||||
lock tables t3 read;
|
||||
select count(*) from t3 where n >= 4;
|
||||
count(*)
|
||||
|
|
|
@ -7,12 +7,12 @@ start slave;
|
|||
reset master;
|
||||
SET @save_select_limit=@@session.sql_select_limit;
|
||||
SET @@session.sql_select_limit=10, @@session.pseudo_thread_id=100;
|
||||
ERROR HY000: Access denied; you need the SUPER privilege for this operation
|
||||
ERROR 42000: Access denied; you need the SUPER privilege for this operation
|
||||
SELECT @@session.sql_select_limit = @save_select_limit;
|
||||
@@session.sql_select_limit = @save_select_limit
|
||||
1
|
||||
SET @@session.sql_select_limit=10, @@session.sql_log_bin=0;
|
||||
ERROR HY000: Access denied; you need the SUPER privilege for this operation
|
||||
ERROR 42000: Access denied; you need the SUPER privilege for this operation
|
||||
SELECT @@session.sql_select_limit = @save_select_limit;
|
||||
@@session.sql_select_limit = @save_select_limit
|
||||
1
|
||||
|
|
|
@ -65,6 +65,22 @@ SET @@session.time_zone='Europe/Moscow';
|
|||
insert into t1 values ('20040101000000'), ('20040611093902');
|
||||
ROLLBACK;
|
||||
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
|
||||
delete from t1;
|
||||
set time_zone='UTC';
|
||||
load data infile '../../std_data/rpl_timezone.dat' into table t1;
|
||||
select * from t1;
|
||||
t
|
||||
2004-01-01 00:00:00
|
||||
2004-06-11 09:39:02
|
||||
set time_zone='UTC';
|
||||
select * from t1;
|
||||
t
|
||||
2004-01-01 00:00:00
|
||||
2004-06-11 09:39:02
|
||||
set time_zone='Europe/Moscow';
|
||||
set time_zone='Europe/Moscow';
|
||||
delete from t1;
|
||||
insert into t1 values ('20040101000000'), ('20040611093902');
|
||||
set time_zone='MET';
|
||||
insert into t2 (select t from t1);
|
||||
select * from t1;
|
||||
|
|
|
@ -15,14 +15,14 @@ drop table t2;
|
|||
show binlog events;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 4 Format_desc 1 98 Server ver: VERSION, Binlog ver: 4
|
||||
master-bin.000001 98 Query 1 220 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 220 Query 1 321 use `test`; insert into t1 values (1),(2),(3),(4)
|
||||
master-bin.000001 321 Query 1 398 use `test`; drop table t1
|
||||
master-bin.000001 398 Query 1 520 use `test`; create table t2(n int not null auto_increment primary key)
|
||||
master-bin.000001 520 Query 1 613 use `test`; insert into t2 values (1),(2)
|
||||
master-bin.000001 613 Query 1 706 use `test`; insert into t2 values (3),(4)
|
||||
master-bin.000001 706 Query 1 783 use `test`; drop table t2
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=321;
|
||||
master-bin.000001 98 Query 1 219 use `test`; create table t1(n int not null auto_increment primary key)
|
||||
master-bin.000001 219 Query 1 319 use `test`; insert into t1 values (1),(2),(3),(4)
|
||||
master-bin.000001 319 Query 1 395 use `test`; drop table t1
|
||||
master-bin.000001 395 Query 1 516 use `test`; create table t2(n int not null auto_increment primary key)
|
||||
master-bin.000001 516 Query 1 608 use `test`; insert into t2 values (1),(2)
|
||||
master-bin.000001 608 Query 1 700 use `test`; insert into t2 values (3),(4)
|
||||
master-bin.000001 700 Query 1 776 use `test`; drop table t2
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=319;
|
||||
select * from t1;
|
||||
n
|
||||
1
|
||||
|
@ -31,7 +31,7 @@ n
|
|||
4
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 783 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 321 # Master master-bin.000001 321 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 776 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 319 # Master master-bin.000001 319 No #
|
||||
start slave until master_log_file='master-no-such-bin.000001', master_log_pos=291;
|
||||
select * from t1;
|
||||
n
|
||||
|
@ -41,21 +41,21 @@ n
|
|||
4
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 783 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 321 # Master master-no-such-bin.000001 291 No #
|
||||
start slave until relay_log_file='slave-relay-bin.000004', relay_log_pos=751;
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 776 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 319 # Master master-no-such-bin.000001 291 No #
|
||||
start slave until relay_log_file='slave-relay-bin.000004', relay_log_pos=746;
|
||||
select * from t2;
|
||||
n
|
||||
1
|
||||
2
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 783 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 613 # Relay slave-relay-bin.000004 751 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 776 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 608 # Relay slave-relay-bin.000004 746 No #
|
||||
start slave;
|
||||
stop slave;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=783;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=776;
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 783 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 783 # Master master-bin.000001 783 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 776 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 776 # Master master-bin.000001 776 No #
|
||||
start slave until master_log_file='master-bin', master_log_pos=561;
|
||||
ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=561, relay_log_pos=12;
|
||||
|
@ -67,6 +67,6 @@ ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UN
|
|||
start slave until relay_log_file='slave-relay-bin.000002', master_log_pos=561;
|
||||
ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
|
||||
start slave sql_thread;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=783;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=776;
|
||||
Warnings:
|
||||
Note 1254 Slave is already running
|
||||
|
|
|
@ -2185,6 +2185,7 @@ Create Databases,Tables,Indexes To create new databases and tables
|
|||
Create routine Functions,Procedures To use CREATE FUNCTION/PROCEDURE
|
||||
Create temporary tables Databases To use CREATE TEMPORARY TABLE
|
||||
Create view Tables To create new views
|
||||
Create user Server Admin To create new users
|
||||
Delete Tables To delete existing rows
|
||||
Drop Databases,Tables To drop databases, tables, and views
|
||||
Execute Functions,Procedures To execute stored routines
|
||||
|
@ -2238,6 +2239,7 @@ Create Databases,Tables,Indexes To create new databases and tables
|
|||
Create routine Functions,Procedures To use CREATE FUNCTION/PROCEDURE
|
||||
Create temporary tables Databases To use CREATE TEMPORARY TABLE
|
||||
Create view Tables To create new views
|
||||
Create user Server Admin To create new users
|
||||
Delete Tables To delete existing rows
|
||||
Drop Databases,Tables To drop databases, tables, and views
|
||||
Execute Functions,Procedures To execute stored routines
|
||||
|
|
|
@ -96,6 +96,7 @@ user CREATE TABLE `user` (
|
|||
`Show_view_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
|
||||
`Create_routine_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
|
||||
`Alter_routine_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
|
||||
`Create_user_priv` enum('N','Y') character set utf8 NOT NULL default 'N',
|
||||
`ssl_type` enum('','ANY','X509','SPECIFIED') character set utf8 NOT NULL default '',
|
||||
`ssl_cipher` blob NOT NULL,
|
||||
`x509_issuer` blob NOT NULL,
|
||||
|
|
|
@ -1730,7 +1730,7 @@ insert into t1 values ('Y');
|
|||
alter table t1 add b set ('Y','N') CHARACTER SET utf8 COLLATE utf8_bin;
|
||||
alter table t1 add c enum ('Y','N') CHARACTER SET utf8 COLLATE utf8_bin;
|
||||
select * from t1;
|
||||
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
|
||||
def test t1 t1 a a 254 1 1 Y 384 0 8
|
||||
def test t1 t1 b b 254 3 0 Y 2176 0 8
|
||||
def test t1 t1 c c 254 1 0 Y 384 0 8
|
||||
|
|
|
@ -180,14 +180,6 @@ t1 CREATE TABLE `t1` (
|
|||
`-(-1.1)` decimal(7,1) NOT NULL default '0.0'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (a varchar(64) character set ucs2, b decimal(10,3));
|
||||
INSERT INTO t1 VALUES ("1.1", 0), ("2.1", 0);
|
||||
update t1 set b=a;
|
||||
SELECT * FROM t1;
|
||||
a b
|
||||
1.1 1.100
|
||||
2.1 2.100
|
||||
DROP TABLE t1;
|
||||
set session sql_mode='traditional';
|
||||
select 1e10/0e0;
|
||||
1e10/0e0
|
||||
|
|
|
@ -376,3 +376,10 @@ explain select * from t1 where v like 'S%' order by v;
|
|||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range v v 13 NULL 2 Using where; Using filesort
|
||||
drop table t1;
|
||||
create table t1 (pkcol varchar(16), othercol varchar(16), primary key (pkcol));
|
||||
insert into t1 values ('test', 'something');
|
||||
update t1 set othercol='somethingelse' where pkcol='test';
|
||||
select * from t1;
|
||||
pkcol othercol
|
||||
test somethingelse
|
||||
drop table t1;
|
||||
|
|
|
@ -1195,3 +1195,8 @@ a b
|
|||
2 b
|
||||
3 c
|
||||
drop table t1;
|
||||
set @val:=6;
|
||||
select concat('value is: ', @val) union select 'some text';
|
||||
concat('value is: ', @val)
|
||||
value is: 6
|
||||
some text
|
||||
|
|
|
@ -204,3 +204,10 @@ set @var= NULL ;
|
|||
select FIELD( @var,'1it','Hit') as my_column;
|
||||
my_column
|
||||
0
|
||||
select @v, coercibility(@v);
|
||||
@v coercibility(@v)
|
||||
NULL 2
|
||||
set @v1=null, @v2=1, @v3=1.1, @v4=now();
|
||||
select coercibility(@v1),coercibility(@v2),coercibility(@v3),coercibility(@v4);
|
||||
coercibility(@v1) coercibility(@v2) coercibility(@v3) coercibility(@v4)
|
||||
2 2 2 2
|
||||
|
|
|
@ -520,3 +520,11 @@ SHOW VARIABLES LIKE 'table_cache';
|
|||
Variable_name Value
|
||||
table_cache 1
|
||||
SET GLOBAL table_cache=DEFAULT;
|
||||
create table t1 (a int);
|
||||
select a into @x from t1;
|
||||
Warnings:
|
||||
Warning 1329 No data to FETCH
|
||||
show warnings;
|
||||
Level Code Message
|
||||
Warning 1329 No data to FETCH
|
||||
drop table t1;
|
||||
|
|
|
@ -142,6 +142,25 @@ Warning 1265 Data truncated for column 'b' at row 10
|
|||
select @@warning_count;
|
||||
@@warning_count
|
||||
50
|
||||
set max_error_count=0;
|
||||
show variables like 'max_error_count';
|
||||
Variable_name Value
|
||||
max_error_count 0
|
||||
update t1 set b='hi';
|
||||
Warnings:
|
||||
select @@warning_count;
|
||||
@@warning_count
|
||||
50
|
||||
show warnings;
|
||||
Level Code Message
|
||||
set max_error_count=65535;
|
||||
show variables like 'max_error_count';
|
||||
Variable_name Value
|
||||
max_error_count 65535
|
||||
set max_error_count=10;
|
||||
show variables like 'max_error_count';
|
||||
Variable_name Value
|
||||
max_error_count 10
|
||||
drop table t1;
|
||||
create table t1 (id int) engine=isam;
|
||||
Warnings:
|
||||
|
|
2
mysql-test/std_data/rpl_timezone.dat
Normal file
2
mysql-test/std_data/rpl_timezone.dat
Normal file
|
@ -0,0 +1,2 @@
|
|||
20040101000000
|
||||
20040611093902
|
99
mysql-test/t/blackhole.test
Normal file
99
mysql-test/t/blackhole.test
Normal file
|
@ -0,0 +1,99 @@
|
|||
#
|
||||
# Simple test for blackhole example
|
||||
# Taken from the select test
|
||||
#
|
||||
-- source include/have_blackhole.inc
|
||||
|
||||
--disable_warnings
|
||||
drop table if exists t1,t2;
|
||||
--enable_warnings
|
||||
|
||||
CREATE TABLE t1 (
|
||||
Period smallint(4) unsigned zerofill DEFAULT '0000' NOT NULL,
|
||||
Varor_period smallint(4) unsigned DEFAULT '0' NOT NULL
|
||||
) ENGINE=blackhole;
|
||||
|
||||
INSERT INTO t1 VALUES (9410,9412);
|
||||
|
||||
select period from t1;
|
||||
select * from t1;
|
||||
select t1.* from t1;
|
||||
|
||||
#
|
||||
# Create test table
|
||||
#
|
||||
|
||||
CREATE TABLE t2 (
|
||||
auto int NOT NULL auto_increment,
|
||||
fld1 int(6) unsigned zerofill DEFAULT '000000' NOT NULL,
|
||||
companynr tinyint(2) unsigned zerofill DEFAULT '00' NOT NULL,
|
||||
fld3 char(30) DEFAULT '' NOT NULL,
|
||||
fld4 char(35) DEFAULT '' NOT NULL,
|
||||
fld5 char(35) DEFAULT '' NOT NULL,
|
||||
fld6 char(4) DEFAULT '' NOT NULL,
|
||||
primary key (auto)
|
||||
) ENGINE=blackhole;
|
||||
|
||||
INSERT INTO t2 VALUES (1192,068305,00,'Colombo','hardware','colicky','');
|
||||
INSERT INTO t2 VALUES (1193,000000,00,'nondecreasing','implant','thrillingly','');
|
||||
--enable_query_log
|
||||
|
||||
#
|
||||
# Search with a key
|
||||
#
|
||||
|
||||
select t2.fld3 from t2 where companynr = 58 and fld3 like "%imaginable%";
|
||||
select fld3 from t2 where fld3 like "%cultivation" ;
|
||||
|
||||
#
|
||||
# Search with a key using sorting and limit the same time
|
||||
#
|
||||
|
||||
select t2.fld3,companynr from t2 where companynr = 57+1 order by fld3;
|
||||
select fld3,companynr from t2 where companynr = 58 order by fld3;
|
||||
|
||||
select fld3 from t2 order by fld3 desc limit 10;
|
||||
select fld3 from t2 order by fld3 desc limit 5;
|
||||
select fld3 from t2 order by fld3 desc limit 5,5;
|
||||
|
||||
#
|
||||
# Search with a key having a constant with each unique key.
|
||||
# The table is read directly with read-next on fld3
|
||||
#
|
||||
|
||||
select t2.fld3 from t2 where fld3 = 'honeysuckle';
|
||||
select t2.fld3 from t2 where fld3 LIKE 'honeysuckl_';
|
||||
select t2.fld3 from t2 where fld3 LIKE 'hon_ysuckl_';
|
||||
select t2.fld3 from t2 where fld3 LIKE 'honeysuckle%';
|
||||
select t2.fld3 from t2 where fld3 LIKE 'h%le';
|
||||
|
||||
select t2.fld3 from t2 where fld3 LIKE 'honeysuckle_';
|
||||
select t2.fld3 from t2 where fld3 LIKE 'don_t_find_me_please%';
|
||||
|
||||
#
|
||||
# Test sorting with a used key (there is no need for sorting)
|
||||
#
|
||||
|
||||
select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
|
||||
select fld1,fld3 from t2 where fld3="Colombo" or fld3 = "nondecreasing" order by fld3;
|
||||
|
||||
|
||||
# Test for fulltext
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (a VARCHAR(200), b TEXT, FULLTEXT (a,b));
|
||||
INSERT INTO t1 VALUES('MySQL has now support', 'for full-text search'),
|
||||
('Full-text indexes', 'are called collections'),
|
||||
('Only MyISAM tables','support collections'),
|
||||
('Function MATCH ... AGAINST()','is used to do a search'),
|
||||
('Full-text search in MySQL', 'implements vector space model');
|
||||
SHOW INDEX FROM t1;
|
||||
|
||||
# nl search
|
||||
|
||||
select * from t1 where MATCH(a,b) AGAINST ("collections");
|
||||
explain extended select * from t1 where MATCH(a,b) AGAINST ("collections");
|
||||
select * from t1 where MATCH(a,b) AGAINST ("indexes");
|
||||
select * from t1 where MATCH(a,b) AGAINST ("indexes collections");
|
||||
select * from t1 where MATCH(a,b) AGAINST ("only");
|
||||
|
||||
drop table if exists t1,t2;
|
|
@ -16,3 +16,12 @@ SET collation_connection='big5_chinese_ci';
|
|||
-- source include/ctype_filesort.inc
|
||||
SET collation_connection='big5_bin';
|
||||
-- source include/ctype_filesort.inc
|
||||
|
||||
#
|
||||
# Bugs#9357: TEXT columns break string with special word in BIG5 charset.
|
||||
#
|
||||
SET NAMES big5;
|
||||
CREATE TABLE t1 (a text) character set big5;
|
||||
INSERT INTO t1 VALUES ('ùØ');
|
||||
SELECT * FROM t1;
|
||||
DROP TABLE t1;
|
||||
|
|
|
@ -414,3 +414,12 @@ CREATE TABLE t1 (Field1 int(10) unsigned default '0');
|
|||
INSERT INTO t1 VALUES ('-1');
|
||||
DROP TABLE t1;
|
||||
SET NAMES latin1;
|
||||
|
||||
#
|
||||
# Conversion from an UCS2 string to a decimal column
|
||||
#
|
||||
CREATE TABLE t1 (a varchar(64) character set ucs2, b decimal(10,3));
|
||||
INSERT INTO t1 VALUES ("1.1", 0), ("2.1", 0);
|
||||
update t1 set b=a;
|
||||
SELECT * FROM t1;
|
||||
DROP TABLE t1;
|
||||
|
|
|
@ -707,3 +707,14 @@ drop table t1;
|
|||
# Bug#8385: utf8_general_ci treats Cyrillic letters I and SHORT I as the same
|
||||
#
|
||||
select convert(_koi8r'É' using utf8) < convert(_koi8r'Ê' using utf8);
|
||||
|
||||
#
|
||||
# Bugs#5980: NULL requires a characterset in a union
|
||||
#
|
||||
set names latin1;
|
||||
create table t1 (a varchar(10)) character set utf8;
|
||||
insert into t1 values ('test');
|
||||
select ifnull(a,'') from t1;
|
||||
drop table t1;
|
||||
select repeat(_utf8'+',3) as h union select NULL;
|
||||
select ifnull(NULL, _utf8'string');
|
||||
|
|
|
@ -377,6 +377,20 @@ insert into t1 values (null);
|
|||
select charset(a), collation(a), coercibility(a) from t1;
|
||||
drop table t1;
|
||||
select charset(null), collation(null), coercibility(null);
|
||||
#
|
||||
# Make sure OUTER JOIN is not replaced with a regular joun
|
||||
#
|
||||
CREATE TABLE t1 (a int, b int);
|
||||
CREATE TABLE t2 (a int, b int);
|
||||
INSERT INTO t1 VALUES (1,1),(2,2);
|
||||
INSERT INTO t2 VALUES (2,2),(3,3);
|
||||
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||
where collation(t2.a) = _utf8'binary' order by t1.a,t2.a;
|
||||
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||
where charset(t2.a) = _utf8'binary' order by t1.a,t2.a;
|
||||
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||
where coercibility(t2.a) = 2 order by t1.a,t2.a;
|
||||
DROP TABLE t1, t2;
|
||||
|
||||
#
|
||||
# test for SUBSTR
|
||||
|
|
|
@ -38,4 +38,6 @@ create table t1 (a char(10)) character set latin1;
|
|||
select * from t1 where a=version();
|
||||
select * from t1 where a=database();
|
||||
select * from t1 where a=user();
|
||||
insert into t1 values ('a');
|
||||
select left(concat(a,version()),1) from t1;
|
||||
drop table t1;
|
||||
|
|
|
@ -9,6 +9,7 @@ SET NAMES binary;
|
|||
# prepare playground before tests
|
||||
--disable_warnings
|
||||
drop database if exists mysqltest;
|
||||
drop database if exists mysqltest_1;
|
||||
--enable_warnings
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
|
@ -18,6 +19,7 @@ flush privileges;
|
|||
|
||||
|
||||
grant all privileges on `my\_1`.* to mysqltest_1@localhost with grant option;
|
||||
grant create user on *.* to mysqltest_1@localhost;
|
||||
create user mysqltest_2@localhost;
|
||||
connect (user_a,localhost,mysqltest_1,,);
|
||||
connection user_a;
|
||||
|
@ -30,7 +32,6 @@ grant update on mysql.* to mysqltest_1@localhost;
|
|||
connect (user_b,localhost,mysqltest_1,,);
|
||||
connection user_b;
|
||||
grant select on `my\_1`.* to mysqltest_2@localhost identified by 'pass';
|
||||
--error 1211
|
||||
grant select on `my\_1`.* to mysqltest_3@localhost;
|
||||
disconnect user_b;
|
||||
connection default;
|
||||
|
@ -52,11 +53,10 @@ flush privileges;
|
|||
#
|
||||
|
||||
grant all privileges on `my\_%`.* to mysqltest_1@localhost with grant option;
|
||||
grant create user on *.* to mysqltest_1@localhost;
|
||||
connect (user1,localhost,mysqltest_1,,);
|
||||
connection user1;
|
||||
select current_user();
|
||||
select current_user;
|
||||
--error 1211
|
||||
grant all privileges on `my\_1`.* to mysqltest_2@localhost with grant option;
|
||||
--error 1044
|
||||
grant all privileges on `my_%`.* to mysqltest_3@localhost with grant option;
|
||||
|
@ -66,15 +66,16 @@ grant all privileges on `my_%`.* to mysqltest_3@localhost with grant option;
|
|||
#
|
||||
set @@sql_mode='NO_AUTO_CREATE_USER';
|
||||
select @@sql_mode;
|
||||
--error 1211
|
||||
#
|
||||
# GRANT without IDENTIFIED BY does not create new users
|
||||
#
|
||||
--error 1133
|
||||
grant select on `my\_1`.* to mysqltest_4@localhost with grant option;
|
||||
--error 1211
|
||||
grant select on `my\_1`.* to mysqltest_4@localhost identified by 'mypass'
|
||||
with grant option;
|
||||
disconnect user1;
|
||||
connection default;
|
||||
show grants for mysqltest_1@localhost;
|
||||
--error 1141
|
||||
show grants for mysqltest_2@localhost;
|
||||
--error 1141
|
||||
show grants for mysqltest_3@localhost;
|
||||
|
@ -82,6 +83,24 @@ delete from mysql.user where user like 'mysqltest\_%';
|
|||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
flush privileges;
|
||||
|
||||
#
|
||||
# wild_compare part two - acl_cache
|
||||
#
|
||||
create database mysqltest_1;
|
||||
grant all privileges on `mysqltest\_1`.* to mysqltest_1@localhost with grant option;
|
||||
connect (user2,localhost,mysqltest_1,,);
|
||||
connection user2;
|
||||
select current_user();
|
||||
show databases;
|
||||
--error 1044
|
||||
grant all privileges on `mysqltest_1`.* to mysqltest_1@localhost with grant option;
|
||||
disconnect user2;
|
||||
connection default;
|
||||
show grants for mysqltest_1@localhost;
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
drop database mysqltest_1;
|
||||
flush privileges;
|
||||
|
||||
#
|
||||
# Bug #6173: One can circumvent missing UPDATE privilege if he has SELECT
|
||||
|
@ -116,9 +135,9 @@ create table t1 (a int, b int);
|
|||
grant select (a) on t1 to mysqltest_1@localhost with grant option;
|
||||
connect (mrugly, localhost, mysqltest_1,,mysqltest);
|
||||
connection mrugly;
|
||||
--error 1211
|
||||
--error 1143
|
||||
grant select (a,b) on t1 to mysqltest_2@localhost;
|
||||
--error 1211
|
||||
--error 1142
|
||||
grant select on t1 to mysqltest_3@localhost;
|
||||
disconnect mrugly;
|
||||
|
||||
|
@ -177,10 +196,6 @@ select host,db,user,table_name from mysql.tables_priv where user like 'mysqltest
|
|||
select host,db,user,table_name,column_name from mysql.columns_priv where user like 'mysqltest_%' order by host,db,user,table_name,column_name;
|
||||
show grants for 'mysqltest_1';
|
||||
drop user 'mysqltest_1', 'mysqltest_3';
|
||||
#
|
||||
# Grant must not create user
|
||||
--error 1410
|
||||
grant all on test.t1 to 'mysqltest_1';
|
||||
--error 1396
|
||||
drop user 'mysqltest_1';
|
||||
#
|
||||
|
@ -248,9 +263,10 @@ show grants for '%@b'@'b';
|
|||
show grants for '%@a'@'a';
|
||||
drop user '%@a'@'a';
|
||||
#
|
||||
# USAGE WITH GRANT OPTION is sufficient.
|
||||
# CREATE USER privilege is enough
|
||||
#
|
||||
create user mysqltest_2@localhost;
|
||||
grant usage on *.* to mysqltest_2@localhost with grant option;
|
||||
grant create user on *.* to mysqltest_2@localhost;
|
||||
connect (user2,localhost,mysqltest_2,,);
|
||||
connection user2;
|
||||
--error 1142
|
||||
|
@ -262,22 +278,20 @@ disconnect user2;
|
|||
connection default;
|
||||
drop user mysqltest_2@localhost;
|
||||
#
|
||||
# ALL PRIVILEGES without GRANT OPTION is not sufficient.
|
||||
# INSERT/UPDATE/DELETE is ok too
|
||||
create user mysqltest_3@localhost;
|
||||
grant all privileges on mysql.* to mysqltest_3@localhost;
|
||||
grant INSERT,DELETE,UPDATE on mysql.* to mysqltest_3@localhost;
|
||||
connect (user3,localhost,mysqltest_3,,);
|
||||
connection user3;
|
||||
show grants;
|
||||
--error 1142
|
||||
select host,user,password from mysql.user where user like 'mysqltest_%' order by host,user,password;
|
||||
insert into mysql.user set host='%', user='mysqltest_B';
|
||||
--error 1044
|
||||
create user mysqltest_A@'%';
|
||||
--error 1044
|
||||
rename user mysqltest_B@'%' to mysqltest_C@'%';
|
||||
--error 1044
|
||||
drop user mysqltest_B@'%';
|
||||
drop user mysqltest_C@'%';
|
||||
disconnect user3;
|
||||
connection default;
|
||||
drop user mysqltest_B@'%';
|
||||
drop user mysqltest_3@localhost;
|
||||
#
|
||||
# Bug #3309: Test IP addresses with netmask
|
||||
|
|
|
@ -16,12 +16,13 @@ delete from mysql.columns_priv where user like 'mysqltest\_%';
|
|||
flush privileges;
|
||||
|
||||
create user mysqltest_1@localhost;
|
||||
grant grant option on mysql.* to mysqltest_1@localhost;
|
||||
grant create user on *.* to mysqltest_1@localhost;
|
||||
grant select on `my\_1`.* to mysqltest_1@localhost with grant option;
|
||||
connect (user_a,localhost,mysqltest_1,,);
|
||||
connection user_a;
|
||||
--error 1410
|
||||
grant select on `my\_1`.* to mysqltest_2@localhost;
|
||||
create user mysqltest_2@localhost;
|
||||
disconnect user_a;
|
||||
connection default;
|
||||
|
||||
|
|
|
@ -403,6 +403,7 @@ while ($tab_count)
|
|||
--disable_result_log
|
||||
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES;
|
||||
--enable_result_log
|
||||
SELECT count(*) FROM INFORMATION_SCHEMA.TABLES;
|
||||
let $tab_count= 65;
|
||||
while ($tab_count)
|
||||
{
|
||||
|
|
|
@ -60,7 +60,7 @@ select "--- --database --" as "";
|
|||
select "--- --position --" as "";
|
||||
--enable_query_log
|
||||
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
||||
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --position=232 $MYSQL_TEST_DIR/var/log/master-bin.000002
|
||||
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --position=231 $MYSQL_TEST_DIR/var/log/master-bin.000002
|
||||
|
||||
# These are tests for remote binlog.
|
||||
# They should return the same as previous test.
|
||||
|
@ -92,7 +92,7 @@ select "--- --database --" as "";
|
|||
select "--- --position --" as "";
|
||||
--enable_query_log
|
||||
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
||||
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --read-from-remote-server --position=232 --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002
|
||||
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --read-from-remote-server --position=231 --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002
|
||||
|
||||
# Bug#7853 (mysqlbinlog does not accept input from stdin)
|
||||
--disable_query_log
|
||||
|
|
|
@ -46,11 +46,11 @@ select "--- offset --" as "";
|
|||
--disable_query_log
|
||||
select "--- start-position --" as "";
|
||||
--enable_query_log
|
||||
--exec $MYSQL_BINLOG --short-form --start-position=604 $MYSQL_TEST_DIR/var/log/master-bin.000001
|
||||
--exec $MYSQL_BINLOG --short-form --start-position=600 $MYSQL_TEST_DIR/var/log/master-bin.000001
|
||||
--disable_query_log
|
||||
select "--- stop-position --" as "";
|
||||
--enable_query_log
|
||||
--exec $MYSQL_BINLOG --short-form --stop-position=604 $MYSQL_TEST_DIR/var/log/master-bin.000001
|
||||
--exec $MYSQL_BINLOG --short-form --stop-position=600 $MYSQL_TEST_DIR/var/log/master-bin.000001
|
||||
--disable_query_log
|
||||
select "--- start-datetime --" as "";
|
||||
--enable_query_log
|
||||
|
@ -75,7 +75,7 @@ select "--- offset --" as "";
|
|||
--disable_query_log
|
||||
select "--- start-position --" as "";
|
||||
--enable_query_log
|
||||
--exec $MYSQL_BINLOG --short-form --start-position=604 $MYSQL_TEST_DIR/var/log/master-bin.000001 $MYSQL_TEST_DIR/var/log/master-bin.000002
|
||||
--exec $MYSQL_BINLOG --short-form --start-position=600 $MYSQL_TEST_DIR/var/log/master-bin.000001 $MYSQL_TEST_DIR/var/log/master-bin.000002
|
||||
--disable_query_log
|
||||
select "--- stop-position --" as "";
|
||||
--enable_query_log
|
||||
|
@ -102,11 +102,11 @@ select "--- offset --" as "";
|
|||
--disable_query_log
|
||||
select "--- start-position --" as "";
|
||||
--enable_query_log
|
||||
--exec $MYSQL_BINLOG --short-form --start-position=604 --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001
|
||||
--exec $MYSQL_BINLOG --short-form --start-position=600 --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001
|
||||
--disable_query_log
|
||||
select "--- stop-position --" as "";
|
||||
--enable_query_log
|
||||
--exec $MYSQL_BINLOG --short-form --stop-position=604 --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001
|
||||
--exec $MYSQL_BINLOG --short-form --stop-position=600 --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001
|
||||
--disable_query_log
|
||||
select "--- start-datetime --" as "";
|
||||
--enable_query_log
|
||||
|
@ -129,7 +129,7 @@ select "--- offset --" as "";
|
|||
--disable_query_log
|
||||
select "--- start-position --" as "";
|
||||
--enable_query_log
|
||||
--exec $MYSQL_BINLOG --short-form --start-position=604 --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 master-bin.000002
|
||||
--exec $MYSQL_BINLOG --short-form --start-position=600 --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 master-bin.000002
|
||||
--disable_query_log
|
||||
select "--- stop-position --" as "";
|
||||
--enable_query_log
|
||||
|
|
|
@ -7,6 +7,8 @@
|
|||
# (Guilhem) have seen the test manage to provoke lock wait timeout
|
||||
# error but not deadlock error; that is ok as code deals with the two
|
||||
# errors in exactly the same way.
|
||||
# We don't 'show status like 'slave_retried_transactions'' because this
|
||||
# is not repeatable (depends on sleeps).
|
||||
|
||||
source include/have_innodb.inc;
|
||||
source include/master-slave.inc;
|
||||
|
@ -16,10 +18,12 @@ create table t1 (a int not null, key(a)) engine=innodb;
|
|||
create table t2 (a int not null, key(a)) engine=innodb;
|
||||
create table t3 (a int) engine=innodb;
|
||||
create table t4 (a int) engine=innodb;
|
||||
show variables like 'slave_transaction_retries';
|
||||
sync_slave_with_master;
|
||||
|
||||
show create table t1;
|
||||
show create table t2;
|
||||
show variables like 'slave_transaction_retries';
|
||||
stop slave;
|
||||
|
||||
# 1) Test deadlock
|
||||
|
@ -68,7 +72,7 @@ show slave status;
|
|||
# 2) Test lock wait timeout
|
||||
|
||||
stop slave;
|
||||
change master to master_log_pos=536; # the BEGIN log event
|
||||
change master to master_log_pos=532; # the BEGIN log event
|
||||
begin;
|
||||
select * from t2 for update; # hold lock
|
||||
start slave;
|
||||
|
@ -89,7 +93,7 @@ set global max_relay_log_size=0;
|
|||
|
||||
# This is really copy-paste of 2) of above
|
||||
stop slave;
|
||||
change master to master_log_pos=536;
|
||||
change master to master_log_pos=532;
|
||||
begin;
|
||||
select * from t2 for update;
|
||||
start slave;
|
||||
|
|
|
@ -11,3 +11,6 @@ disconnect master;
|
|||
connection slave;
|
||||
--real_sleep 3; # time for DROP to be written
|
||||
show status like 'Slave_open_temp_tables';
|
||||
connection default;
|
||||
drop database mysqltest;
|
||||
|
||||
|
|
|
@ -123,12 +123,29 @@ show slave status;
|
|||
connection master;
|
||||
reset master;
|
||||
create table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60),
|
||||
unique(day));
|
||||
unique(day)) engine=MyISAM; # no transactions
|
||||
--error 1062;
|
||||
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields
|
||||
terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by
|
||||
'\n##\n' starting by '>' ignore 1 lines;
|
||||
# To test that there is Create_file & Delete_file, we test if the binlog is as
|
||||
# long as expected (can't do SHOW BINLOG EVENTS because of varying file_id).
|
||||
show master status;
|
||||
select * from t2;
|
||||
save_master_pos;
|
||||
connection slave;
|
||||
start slave;
|
||||
sync_with_master;
|
||||
select * from t2;
|
||||
|
||||
# verify that if no error on slave, this is an error
|
||||
|
||||
alter table t2 drop key day;
|
||||
connection master;
|
||||
delete from t2;
|
||||
--error 1062;
|
||||
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields
|
||||
terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by
|
||||
'\n##\n' starting by '>' ignore 1 lines;
|
||||
connection slave;
|
||||
wait_for_slave_to_stop;
|
||||
drop table t2;
|
||||
connection master;
|
||||
drop table t2;
|
||||
|
|
|
@ -49,6 +49,24 @@ connection master;
|
|||
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
||||
--exec $MYSQL_BINLOG --short-form $MYSQL_TEST_DIR/var/log/master-bin.000001
|
||||
|
||||
# Let us check with LOAD DATA INFILE
|
||||
# (we do it after mysqlbinlog because the temp files names are not constant)
|
||||
connection master;
|
||||
delete from t1;
|
||||
set time_zone='UTC';
|
||||
load data infile '../../std_data/rpl_timezone.dat' into table t1;
|
||||
select * from t1;
|
||||
sync_slave_with_master;
|
||||
set time_zone='UTC';
|
||||
select * from t1;
|
||||
set time_zone='Europe/Moscow';
|
||||
|
||||
# Put back values of before the LOAD
|
||||
connection master;
|
||||
set time_zone='Europe/Moscow';
|
||||
delete from t1;
|
||||
insert into t1 values ('20040101000000'), ('20040611093902');
|
||||
|
||||
#
|
||||
# Now let us check how well we replicate statments reading TIMESTAMP fields
|
||||
# (We should see the same data on master and on slave but it should differ
|
||||
|
|
|
@ -24,7 +24,7 @@ show binlog events;
|
|||
|
||||
# try to replicate all queries until drop of t1
|
||||
connection slave;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=321;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=319;
|
||||
sleep 2;
|
||||
# here table should be still not deleted
|
||||
select * from t1;
|
||||
|
@ -42,7 +42,7 @@ sleep 2;
|
|||
show slave status;
|
||||
|
||||
# try replicate all until second insert to t2;
|
||||
start slave until relay_log_file='slave-relay-bin.000004', relay_log_pos=751;
|
||||
start slave until relay_log_file='slave-relay-bin.000004', relay_log_pos=746;
|
||||
sleep 4;
|
||||
select * from t2;
|
||||
--replace_result $MASTER_MYPORT MASTER_MYPORT
|
||||
|
@ -58,7 +58,7 @@ sync_with_master;
|
|||
stop slave;
|
||||
|
||||
# this should stop immediately as we are already there
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=783;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=776;
|
||||
# 2 is not enough when running with valgrind
|
||||
real_sleep 4
|
||||
# here the sql slave thread should be stopped
|
||||
|
@ -79,4 +79,4 @@ start slave until relay_log_file='slave-relay-bin.000002';
|
|||
start slave until relay_log_file='slave-relay-bin.000002', master_log_pos=561;
|
||||
# Warning should be given for second command
|
||||
start slave sql_thread;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=783;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=776;
|
||||
|
|
|
@ -90,15 +90,6 @@ create table t1 select round(15.4,-1), truncate(-5678.123451,-3), abs(-1.1), -(-
|
|||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# conversion from ucs2
|
||||
#
|
||||
CREATE TABLE t1 (a varchar(64) character set ucs2, b decimal(10,3));
|
||||
INSERT INTO t1 VALUES ("1.1", 0), ("2.1", 0);
|
||||
update t1 set b=a;
|
||||
SELECT * FROM t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Trydy's tests
|
||||
#
|
||||
|
|
|
@ -97,3 +97,12 @@ explain select * from t1 where v like 'This is a test' order by v;
|
|||
explain select * from t1 where v='This is a test' order by v;
|
||||
explain select * from t1 where v like 'S%' order by v;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# bug#9339 - meaningless Field_varstring::get_key_image
|
||||
#
|
||||
create table t1 (pkcol varchar(16), othercol varchar(16), primary key (pkcol));
|
||||
insert into t1 values ('test', 'something');
|
||||
update t1 set othercol='somethingelse' where pkcol='test';
|
||||
select * from t1;
|
||||
drop table t1;
|
||||
|
|
|
@ -729,3 +729,9 @@ select * from ((select * from t1 limit 1) union (select * from t1 limit 1) union
|
|||
select * from ((((select * from t1))) union (select * from t1) union (select * from t1)) a;
|
||||
select * from ((select * from t1) union (((select * from t1))) union (select * from t1)) a;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Bugs#6519 UNION with collation binary and latin1_swedish_ci fails
|
||||
#
|
||||
set @val:=6;
|
||||
select concat('value is: ', @val) union select 'some text';
|
||||
|
|
|
@ -124,3 +124,10 @@ drop table t1;
|
|||
#
|
||||
set @var= NULL ;
|
||||
select FIELD( @var,'1it','Hit') as my_column;
|
||||
|
||||
#
|
||||
# Bug#9425 A user variable doesn't always have implicit coercibility
|
||||
#
|
||||
select @v, coercibility(@v);
|
||||
set @v1=null, @v2=1, @v3=1.1, @v4=now();
|
||||
select coercibility(@v1),coercibility(@v2),coercibility(@v3),coercibility(@v4);
|
||||
|
|
|
@ -388,3 +388,12 @@ SHOW VARIABLES LIKE 'MYISAM_DATA_POINTER_SIZE';
|
|||
SET GLOBAL table_cache=-1;
|
||||
SHOW VARIABLES LIKE 'table_cache';
|
||||
SET GLOBAL table_cache=DEFAULT;
|
||||
|
||||
#
|
||||
# Bug#6282 Packet error with SELECT INTO
|
||||
#
|
||||
create table t1 (a int);
|
||||
select a into @x from t1;
|
||||
show warnings;
|
||||
drop table t1;
|
||||
|
||||
|
|
|
@ -96,6 +96,19 @@ update t1 set b=a;
|
|||
select @@warning_count;
|
||||
--enable_ps_protocol
|
||||
|
||||
# Bug#9072
|
||||
set max_error_count=0;
|
||||
show variables like 'max_error_count';
|
||||
update t1 set b='hi';
|
||||
--disable_ps_protocol
|
||||
select @@warning_count;
|
||||
--enable_ps_protocol
|
||||
show warnings;
|
||||
set max_error_count=65535;
|
||||
show variables like 'max_error_count';
|
||||
set max_error_count=10;
|
||||
show variables like 'max_error_count';
|
||||
|
||||
#
|
||||
# Test for handler type
|
||||
#
|
||||
|
|
|
@ -52,7 +52,8 @@ libmysys_a_SOURCES = my_init.c my_getwd.c mf_getdate.c my_mmap.c \
|
|||
my_net.c my_semaphore.c my_port.c my_sleep.c \
|
||||
charset.c charset-def.c my_bitmap.c my_bit.c md5.c \
|
||||
my_gethostbyname.c rijndael.c my_aes.c sha1.c \
|
||||
my_handler.c my_netware.c my_largepage.c
|
||||
my_handler.c my_netware.c my_largepage.c \
|
||||
my_windac.c
|
||||
EXTRA_DIST = thr_alarm.c thr_lock.c my_pthread.c my_thr_init.c \
|
||||
thr_mutex.c thr_rwlock.c
|
||||
libmysys_a_LIBADD = @THREAD_LOBJECTS@
|
||||
|
|
|
@ -547,10 +547,10 @@ CHARSET_INFO *get_charset_by_csname(const char *cs_name,
|
|||
DBUG_PRINT("enter",("name: '%s'", cs_name));
|
||||
|
||||
(void) init_available_charsets(MYF(0)); /* If it isn't initialized */
|
||||
|
||||
|
||||
cs_number= get_charset_number(cs_name, cs_flags);
|
||||
cs= cs_number ? get_internal_charset(cs_number, flags) : NULL;
|
||||
|
||||
|
||||
if (!cs && (flags & MY_WME))
|
||||
{
|
||||
char index_file[FN_REFLEN];
|
||||
|
@ -561,21 +561,34 @@ CHARSET_INFO *get_charset_by_csname(const char *cs_name,
|
|||
DBUG_RETURN(cs);
|
||||
}
|
||||
|
||||
|
||||
ulong escape_string_for_mysql(CHARSET_INFO *charset_info, char *to,
|
||||
/*
|
||||
NOTE
|
||||
to keep old C API, to_length may be 0 to mean "big enough"
|
||||
RETURN
|
||||
the length of the escaped string or ~0 if it did not fit.
|
||||
*/
|
||||
ulong escape_string_for_mysql(CHARSET_INFO *charset_info,
|
||||
char *to, ulong to_length,
|
||||
const char *from, ulong length)
|
||||
{
|
||||
const char *to_start= to;
|
||||
const char *end;
|
||||
const char *end, *to_end=to_start + (to_length ? to_length-1 : 2*length);
|
||||
my_bool overflow=0;
|
||||
#ifdef USE_MB
|
||||
my_bool use_mb_flag= use_mb(charset_info);
|
||||
#endif
|
||||
for (end= from + length; from != end; from++)
|
||||
for (end= from + length; from < end; from++)
|
||||
{
|
||||
char escape=0;
|
||||
#ifdef USE_MB
|
||||
int l;
|
||||
if (use_mb_flag && (l= my_ismbchar(charset_info, from, end)))
|
||||
{
|
||||
if (to + l >= to_end)
|
||||
{
|
||||
overflow=1;
|
||||
break;
|
||||
}
|
||||
while (l--)
|
||||
*to++= *from++;
|
||||
from--;
|
||||
|
@ -593,45 +606,53 @@ ulong escape_string_for_mysql(CHARSET_INFO *charset_info, char *to,
|
|||
a valid GBK character, but 0xbf5c is. (0x27 = ', 0x5c = \)
|
||||
*/
|
||||
if (use_mb_flag && (l= my_mbcharlen(charset_info, *from)) > 1)
|
||||
{
|
||||
*to++= '\\';
|
||||
*to++= *from;
|
||||
continue;
|
||||
}
|
||||
escape= *from;
|
||||
else
|
||||
#endif
|
||||
switch (*from) {
|
||||
case 0: /* Must be escaped for 'mysql' */
|
||||
*to++= '\\';
|
||||
*to++= '0';
|
||||
escape= '0';
|
||||
break;
|
||||
case '\n': /* Must be escaped for logs */
|
||||
*to++= '\\';
|
||||
*to++= 'n';
|
||||
escape= 'n';
|
||||
break;
|
||||
case '\r':
|
||||
*to++= '\\';
|
||||
*to++= 'r';
|
||||
escape= 'r';
|
||||
break;
|
||||
case '\\':
|
||||
*to++= '\\';
|
||||
*to++= '\\';
|
||||
escape= '\\';
|
||||
break;
|
||||
case '\'':
|
||||
*to++= '\\';
|
||||
*to++= '\'';
|
||||
escape= '\'';
|
||||
break;
|
||||
case '"': /* Better safe than sorry */
|
||||
*to++= '\\';
|
||||
*to++= '"';
|
||||
escape= '"';
|
||||
break;
|
||||
case '\032': /* This gives problems on Win32 */
|
||||
*to++= '\\';
|
||||
*to++= 'Z';
|
||||
escape= 'Z';
|
||||
break;
|
||||
default:
|
||||
}
|
||||
if (escape)
|
||||
{
|
||||
if (to + 2 >= to_end)
|
||||
{
|
||||
overflow=1;
|
||||
break;
|
||||
}
|
||||
*to++= '\\';
|
||||
*to++= escape;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (to + 1 >= to_end)
|
||||
{
|
||||
overflow=1;
|
||||
break;
|
||||
}
|
||||
*to++= *from;
|
||||
}
|
||||
}
|
||||
*to= 0;
|
||||
return (ulong) (to - to_start);
|
||||
return overflow ? (ulong)~0 : (ulong) (to - to_start);
|
||||
}
|
||||
|
||||
|
|
224
mysys/my_windac.c
Normal file
224
mysys/my_windac.c
Normal file
|
@ -0,0 +1,224 @@
|
|||
/* Copyright (C) 2000-2005 MySQL AB
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
|
||||
|
||||
#include "mysys_priv.h"
|
||||
#include "m_string.h"
|
||||
#ifdef __WIN__
|
||||
|
||||
/* Windows NT/2000 discretionary access control utility functions. */
|
||||
|
||||
/*
|
||||
Check if the operating system is built on NT technology.
|
||||
|
||||
RETURN
|
||||
0 Windows 95/98/Me
|
||||
1 otherwise
|
||||
*/
|
||||
|
||||
static my_bool is_nt()
|
||||
{
|
||||
return GetVersion() < 0x80000000;
|
||||
}
|
||||
|
||||
/*
|
||||
Auxilary structure to store pointers to the data which we need to keep
|
||||
around while SECURITY_ATTRIBUTES is in use.
|
||||
*/
|
||||
|
||||
typedef struct st_my_security_attr
|
||||
{
|
||||
PSID everyone_sid;
|
||||
PACL dacl;
|
||||
} My_security_attr;
|
||||
|
||||
|
||||
/*
|
||||
Allocate and initialize SECURITY_ATTRIBUTES setting up access
|
||||
rights for the owner and group `Everybody'.
|
||||
|
||||
SYNOPSIS
|
||||
my_security_attr_create()
|
||||
psa [OUT] pointer to store the pointer to SA in
|
||||
perror [OUT] pointer to store error message if there was an
|
||||
error
|
||||
owner_rights [IN] access rights for the owner
|
||||
everyone_rights [IN] access rights for group Everybody
|
||||
|
||||
DESCRIPTION
|
||||
Set up the security attributes to provide clients with sufficient
|
||||
access rights to a kernel object. We need this function
|
||||
because if we simply grant all access to everybody (by installing
|
||||
a NULL DACL) a mailicious user can attempt a denial of service
|
||||
attack by taking ownership over the kernel object. Upon successful
|
||||
return `psa' contains a pointer to SECUIRITY_ATTRIBUTES that can be used
|
||||
to create kernel objects with proper access rights.
|
||||
|
||||
RETURN
|
||||
0 success, psa is 0 or points to a valid SA structure,
|
||||
perror is left intact
|
||||
!0 error, SA is set to 0, error message is stored in perror
|
||||
*/
|
||||
|
||||
int my_security_attr_create(SECURITY_ATTRIBUTES **psa, const char **perror,
|
||||
DWORD owner_rights, DWORD everyone_rights)
|
||||
{
|
||||
/* Top-level SID authority */
|
||||
SID_IDENTIFIER_AUTHORITY world_auth= SECURITY_WORLD_SID_AUTHORITY;
|
||||
PSID everyone_sid= 0;
|
||||
HANDLE htoken= 0;
|
||||
SECURITY_ATTRIBUTES *sa= 0;
|
||||
PACL dacl= 0;
|
||||
DWORD owner_token_length, dacl_length;
|
||||
SECURITY_DESCRIPTOR *sd;
|
||||
PTOKEN_USER owner_token;
|
||||
PSID owner_sid;
|
||||
My_security_attr *attr;
|
||||
|
||||
if (! is_nt())
|
||||
{
|
||||
*psa= 0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
Get SID of Everyone group. Easier to retrieve all SIDs each time
|
||||
this function is called than worry about thread safety.
|
||||
*/
|
||||
if (! AllocateAndInitializeSid(&world_auth, 1, SECURITY_WORLD_RID,
|
||||
0, 0, 0, 0, 0, 0, 0, &everyone_sid))
|
||||
{
|
||||
*perror= "Failed to retrieve the SID of Everyone group";
|
||||
goto error;
|
||||
}
|
||||
|
||||
/*
|
||||
Get SID of the owner. Using GetSecurityInfo this task can be done
|
||||
in just one call instead of five, but GetSecurityInfo declared in
|
||||
aclapi.h, so I hesitate to use it.
|
||||
SIC: OpenThreadToken works only if there is an active impersonation
|
||||
token, hence OpenProcessToken is used.
|
||||
*/
|
||||
if (! OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &htoken))
|
||||
{
|
||||
*perror= "Failed to retrieve thread access token";
|
||||
goto error;
|
||||
}
|
||||
GetTokenInformation(htoken, TokenUser, 0, 0, &owner_token_length);
|
||||
|
||||
if (! my_multi_malloc(MYF(MY_WME),
|
||||
&sa, ALIGN_SIZE(sizeof(SECURITY_ATTRIBUTES)) +
|
||||
sizeof(My_security_attr),
|
||||
&sd, sizeof(SECURITY_DESCRIPTOR),
|
||||
&owner_token, owner_token_length,
|
||||
0))
|
||||
{
|
||||
*perror= "Failed to allocate memory for SECURITY_ATTRIBUTES";
|
||||
goto error;
|
||||
}
|
||||
bzero(owner_token, owner_token_length);
|
||||
if (! GetTokenInformation(htoken, TokenUser, owner_token,
|
||||
owner_token_length, &owner_token_length))
|
||||
{
|
||||
*perror= "GetTokenInformation failed";
|
||||
goto error;
|
||||
}
|
||||
owner_sid= owner_token->User.Sid;
|
||||
|
||||
if (! IsValidSid(owner_sid))
|
||||
{
|
||||
*perror= "IsValidSid failed";
|
||||
goto error;
|
||||
}
|
||||
|
||||
/* Calculate the amount of memory that must be allocated for the DACL */
|
||||
dacl_length= sizeof(ACL) + (sizeof(ACCESS_ALLOWED_ACE)-sizeof(DWORD)) * 2 +
|
||||
GetLengthSid(everyone_sid) + GetLengthSid(owner_sid);
|
||||
|
||||
/* Create an ACL */
|
||||
if (! (dacl= (PACL) my_malloc(dacl_length, MYF(MY_ZEROFILL|MY_WME))))
|
||||
{
|
||||
*perror= "Failed to allocate memory for DACL";
|
||||
goto error;
|
||||
}
|
||||
if (! InitializeAcl(dacl, dacl_length, ACL_REVISION))
|
||||
{
|
||||
*perror= "Failed to initialize DACL";
|
||||
goto error;
|
||||
}
|
||||
if (! AddAccessAllowedAce(dacl, ACL_REVISION, everyone_rights, everyone_sid))
|
||||
{
|
||||
*perror= "Failed to set up DACL";
|
||||
goto error;
|
||||
}
|
||||
if (! AddAccessAllowedAce(dacl, ACL_REVISION, owner_rights, owner_sid))
|
||||
{
|
||||
*perror= "Failed to set up DACL";
|
||||
goto error;
|
||||
}
|
||||
if (! InitializeSecurityDescriptor(sd, SECURITY_DESCRIPTOR_REVISION))
|
||||
{
|
||||
*perror= "Could not initialize security descriptor";
|
||||
goto error;
|
||||
}
|
||||
if (! SetSecurityDescriptorDacl(sd, TRUE, dacl, FALSE))
|
||||
{
|
||||
*perror= "Failed to install DACL";
|
||||
goto error;
|
||||
}
|
||||
|
||||
sa->nLength= sizeof(*sa);
|
||||
sa->bInheritHandle= TRUE;
|
||||
sa->lpSecurityDescriptor= sd;
|
||||
/* Save pointers to everyone_sid and dacl to be able to clean them up */
|
||||
attr= (My_security_attr*) (((char*) sa) + ALIGN_SIZE(sizeof(*sa)));
|
||||
attr->everyone_sid= everyone_sid;
|
||||
attr->dacl= dacl;
|
||||
*psa= sa;
|
||||
|
||||
CloseHandle(htoken);
|
||||
return 0;
|
||||
error:
|
||||
if (everyone_sid)
|
||||
FreeSid(everyone_sid);
|
||||
if (htoken)
|
||||
CloseHandle(htoken);
|
||||
my_free((gptr) sa, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free((gptr) dacl, MYF(MY_ALLOW_ZERO_PTR));
|
||||
*psa= 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
Cleanup security attributes freeing used memory.
|
||||
|
||||
SYNOPSIS
|
||||
my_security_attr_free()
|
||||
sa security attributes
|
||||
*/
|
||||
|
||||
void my_security_attr_free(SECURITY_ATTRIBUTES *sa)
|
||||
{
|
||||
if (sa)
|
||||
{
|
||||
My_security_attr *attr= (My_security_attr*)
|
||||
(((char*)sa) + ALIGN_SIZE(sizeof(*sa)));
|
||||
FreeSid(attr->everyone_sid);
|
||||
my_free((gptr) attr->dacl, MYF(0));
|
||||
my_free((gptr) sa, MYF(0));
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* __WIN__ */
|
|
@ -1,3 +1,11 @@
|
|||
#if 0
|
||||
make -f Makefile -f - printSchemaFile <<'_eof_'
|
||||
printSchemaFile: printSchemaFile.cpp
|
||||
$(CXXCOMPILE) -o $@ $@.cpp -L../../../common/util/.libs -lgeneral
|
||||
_eof_
|
||||
exit $?
|
||||
#endif
|
||||
|
||||
/* Copyright (C) 2003 MySQL AB
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
|
@ -92,6 +100,13 @@ NDB_COMMAND(printSchemafile,
|
|||
}
|
||||
|
||||
print(filename, (SchemaFile *)&buf[0]);
|
||||
|
||||
Uint32 chk = 0, i;
|
||||
for (i = 0; i < bytes/4; i++)
|
||||
chk ^= buf[i];
|
||||
if (chk != 0)
|
||||
ndbout << "Invalid checksum!" << endl;
|
||||
|
||||
delete [] buf;
|
||||
return 0;
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
include .defs.mk
|
||||
|
||||
TYPE := ndbapi
|
||||
|
||||
BIN_TARGET := printSchemafile
|
||||
BIN_TARGET_ARCHIVES := portlib general
|
||||
|
||||
CCFLAGS_LOC += -I..
|
||||
|
||||
SOURCES := printSchemafile.cpp
|
||||
|
||||
include $(NDB_TOP)/Epilogue.mk
|
|
@ -18,8 +18,8 @@
|
|||
#include <string.h>
|
||||
|
||||
Signal::Signal(){
|
||||
memset(&header, sizeof(header), 0);
|
||||
memset(theData, sizeof(theData), 0);
|
||||
memset(&header, 0, sizeof(header));
|
||||
memset(theData, 0, sizeof(theData));
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -146,6 +146,7 @@ then
|
|||
c_u="$c_u Show_view_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
|
||||
c_u="$c_u Create_routine_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
|
||||
c_u="$c_u Alter_routine_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
|
||||
c_u="$c_u Create_user_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
|
||||
c_u="$c_u ssl_type enum('','ANY','X509', 'SPECIFIED') COLLATE utf8_general_ci DEFAULT '' NOT NULL,"
|
||||
c_u="$c_u ssl_cipher BLOB NOT NULL,"
|
||||
c_u="$c_u x509_issuer BLOB NOT NULL,"
|
||||
|
@ -161,22 +162,22 @@ then
|
|||
|
||||
if test "$1" = "test"
|
||||
then
|
||||
i_u="INSERT INTO user VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
||||
INSERT INTO user VALUES ('$hostname','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
||||
REPLACE INTO user VALUES ('127.0.0.1','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
||||
i_u="INSERT INTO user VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
||||
INSERT INTO user VALUES ('$hostname','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
||||
REPLACE INTO user VALUES ('127.0.0.1','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
||||
INSERT INTO user (host,user) values ('localhost','');
|
||||
INSERT INTO user (host,user) values ('$hostname','');"
|
||||
else
|
||||
i_u="INSERT INTO user VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);"
|
||||
i_u="INSERT INTO user VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);"
|
||||
if test "$windows" = "0"
|
||||
then
|
||||
i_u="$i_u
|
||||
INSERT INTO user VALUES ('$hostname','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
||||
INSERT INTO user VALUES ('$hostname','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);
|
||||
INSERT INTO user (host,user) values ('$hostname','');
|
||||
INSERT INTO user (host,user) values ('localhost','');"
|
||||
else
|
||||
i_u="$i_u
|
||||
INSERT INTO user VALUES ('localhost','','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0);"
|
||||
INSERT INTO user VALUES ('localhost','','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0);"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
|
|
@ -290,6 +290,18 @@ UPDATE db SET Create_routine_priv=Create_priv, Alter_routine_priv=Alter_priv, Ex
|
|||
#
|
||||
ALTER TABLE user ADD max_user_connections int(11) unsigned DEFAULT '0' NOT NULL AFTER max_connections;
|
||||
|
||||
#
|
||||
# user.Create_user_priv
|
||||
#
|
||||
|
||||
SET @hadCreateUserPriv:=0;
|
||||
SELECT @hadCreateUserPriv:=1 FROM user WHERE Create_user_priv LIKE '%';
|
||||
|
||||
ALTER TABLE user ADD Create_user_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL AFTER Alter_routine_priv;
|
||||
UPDATE user LEFT JOIN db USING (Host,User) SET Create_user_priv='Y'
|
||||
WHERE @hadCreateUserPriv = 0 AND
|
||||
(user.Grant_priv = 'Y' OR db.Grant_priv = 'Y');
|
||||
|
||||
#
|
||||
# Create some possible missing tables
|
||||
#
|
||||
|
|
|
@ -405,6 +405,7 @@ HANDLE create_shared_memory(MYSQL *mysql,NET *net, uint connect_timeout)
|
|||
char *suffix_pos;
|
||||
DWORD error_allow = 0;
|
||||
DWORD error_code = 0;
|
||||
DWORD event_access_rights= SYNCHRONIZE | EVENT_MODIFY_STATE;
|
||||
char *shared_memory_base_name = mysql->options.shared_memory_base_name;
|
||||
|
||||
/*
|
||||
|
@ -416,13 +417,13 @@ HANDLE create_shared_memory(MYSQL *mysql,NET *net, uint connect_timeout)
|
|||
*/
|
||||
suffix_pos = strxmov(tmp,shared_memory_base_name,"_",NullS);
|
||||
strmov(suffix_pos, "CONNECT_REQUEST");
|
||||
if (!(event_connect_request= OpenEvent(EVENT_ALL_ACCESS,FALSE,tmp)))
|
||||
if (!(event_connect_request= OpenEvent(event_access_rights, FALSE, tmp)))
|
||||
{
|
||||
error_allow = CR_SHARED_MEMORY_CONNECT_REQUEST_ERROR;
|
||||
goto err;
|
||||
}
|
||||
strmov(suffix_pos, "CONNECT_ANSWER");
|
||||
if (!(event_connect_answer= OpenEvent(EVENT_ALL_ACCESS,FALSE,tmp)))
|
||||
if (!(event_connect_answer= OpenEvent(event_access_rights,FALSE,tmp)))
|
||||
{
|
||||
error_allow = CR_SHARED_MEMORY_CONNECT_ANSWER_ERROR;
|
||||
goto err;
|
||||
|
@ -484,35 +485,35 @@ HANDLE create_shared_memory(MYSQL *mysql,NET *net, uint connect_timeout)
|
|||
}
|
||||
|
||||
strmov(suffix_pos, "SERVER_WROTE");
|
||||
if ((event_server_wrote = OpenEvent(EVENT_ALL_ACCESS,FALSE,tmp)) == NULL)
|
||||
if ((event_server_wrote = OpenEvent(event_access_rights,FALSE,tmp)) == NULL)
|
||||
{
|
||||
error_allow = CR_SHARED_MEMORY_EVENT_ERROR;
|
||||
goto err2;
|
||||
}
|
||||
|
||||
strmov(suffix_pos, "SERVER_READ");
|
||||
if ((event_server_read = OpenEvent(EVENT_ALL_ACCESS,FALSE,tmp)) == NULL)
|
||||
if ((event_server_read = OpenEvent(event_access_rights,FALSE,tmp)) == NULL)
|
||||
{
|
||||
error_allow = CR_SHARED_MEMORY_EVENT_ERROR;
|
||||
goto err2;
|
||||
}
|
||||
|
||||
strmov(suffix_pos, "CLIENT_WROTE");
|
||||
if ((event_client_wrote = OpenEvent(EVENT_ALL_ACCESS,FALSE,tmp)) == NULL)
|
||||
if ((event_client_wrote = OpenEvent(event_access_rights,FALSE,tmp)) == NULL)
|
||||
{
|
||||
error_allow = CR_SHARED_MEMORY_EVENT_ERROR;
|
||||
goto err2;
|
||||
}
|
||||
|
||||
strmov(suffix_pos, "CLIENT_READ");
|
||||
if ((event_client_read = OpenEvent(EVENT_ALL_ACCESS,FALSE,tmp)) == NULL)
|
||||
if ((event_client_read = OpenEvent(event_access_rights,FALSE,tmp)) == NULL)
|
||||
{
|
||||
error_allow = CR_SHARED_MEMORY_EVENT_ERROR;
|
||||
goto err2;
|
||||
}
|
||||
|
||||
strmov(suffix_pos, "CONNECTION_CLOSED");
|
||||
if ((event_conn_closed = OpenEvent(EVENT_ALL_ACCESS,FALSE,tmp)) == NULL)
|
||||
if ((event_conn_closed = OpenEvent(event_access_rights,FALSE,tmp)) == NULL)
|
||||
{
|
||||
error_allow = CR_SHARED_MEMORY_EVENT_ERROR;
|
||||
goto err2;
|
||||
|
|
|
@ -62,9 +62,8 @@ noinst_HEADERS = item.h item_func.h item_sum.h item_cmpfunc.h \
|
|||
sp_head.h sp_pcontext.h sp_rcontext.h sp.h sp_cache.h \
|
||||
parse_file.h sql_view.h sql_trigger.h \
|
||||
examples/ha_example.h examples/ha_archive.h \
|
||||
examples/ha_tina.h \
|
||||
examples/ha_tina.h ha_blackhole.h \
|
||||
ha_federated.h
|
||||
|
||||
mysqld_SOURCES = sql_lex.cc sql_handler.cc \
|
||||
item.cc item_sum.cc item_buff.cc item_func.cc \
|
||||
item_cmpfunc.cc item_strfunc.cc item_timefunc.cc \
|
||||
|
@ -99,7 +98,7 @@ mysqld_SOURCES = sql_lex.cc sql_handler.cc \
|
|||
sp_head.cc sp_pcontext.cc sp_rcontext.cc sp.cc \
|
||||
sp_cache.cc parse_file.cc sql_trigger.cc \
|
||||
examples/ha_example.cc examples/ha_archive.cc \
|
||||
examples/ha_tina.cc \
|
||||
examples/ha_tina.cc ha_blackhole.cc \
|
||||
ha_federated.cc
|
||||
|
||||
gen_lex_hash_SOURCES = gen_lex_hash.cc
|
||||
|
|
29
sql/field.cc
29
sql/field.cc
|
@ -752,25 +752,22 @@ bool Field::quote_data(String *unquoted_string)
|
|||
{
|
||||
char escaped_string[IO_SIZE];
|
||||
char *unquoted_string_buffer= (char *)(unquoted_string->ptr());
|
||||
uint need_quotes;
|
||||
DBUG_ENTER("Field::quote_data");
|
||||
|
||||
// this is the same call that mysql_real_escape_string() calls
|
||||
escape_string_for_mysql(&my_charset_bin, (char *)escaped_string,
|
||||
unquoted_string->ptr(), unquoted_string->length());
|
||||
|
||||
need_quotes= needs_quotes();
|
||||
|
||||
if (need_quotes == 0)
|
||||
if (!needs_quotes())
|
||||
DBUG_RETURN(0);
|
||||
|
||||
// this is the same call that mysql_real_escape_string() calls
|
||||
if (escape_string_for_mysql(&my_charset_bin, (char *)escaped_string,
|
||||
sizeof(escaped_string), unquoted_string->ptr(),
|
||||
unquoted_string->length()) == (ulong)~0)
|
||||
DBUG_RETURN(1);
|
||||
|
||||
// reset string, then re-append with quotes and escaped values
|
||||
unquoted_string->length(0);
|
||||
if (unquoted_string->append('\''))
|
||||
DBUG_RETURN(1);
|
||||
if (unquoted_string->append((char *)escaped_string))
|
||||
DBUG_RETURN(1);
|
||||
if (unquoted_string->append('\''))
|
||||
if (unquoted_string->append('\'') ||
|
||||
unquoted_string->append((char *)escaped_string) ||
|
||||
unquoted_string->append('\''))
|
||||
DBUG_RETURN(1);
|
||||
DBUG_RETURN(0);
|
||||
}
|
||||
|
@ -5725,12 +5722,12 @@ void Field_varstring::get_key_image(char *buff, uint length, imagetype type)
|
|||
{
|
||||
uint f_length= length_bytes == 1 ? (uint) (uchar) *ptr : uint2korr(ptr);
|
||||
uint char_length= length / field_charset->mbmaxlen;
|
||||
char_length= my_charpos(field_charset, ptr, ptr + length_bytes,
|
||||
char_length);
|
||||
char *pos= ptr+length_bytes;
|
||||
char_length= my_charpos(field_charset, pos, pos + f_length, char_length);
|
||||
set_if_smaller(f_length, char_length);
|
||||
/* Key is always stored with 2 bytes */
|
||||
int2store(buff,f_length);
|
||||
memcpy(buff+HA_KEY_BLOB_LENGTH, ptr+length_bytes, f_length);
|
||||
memcpy(buff+HA_KEY_BLOB_LENGTH, pos, f_length);
|
||||
if (f_length < length)
|
||||
{
|
||||
/*
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue