![]() |
|
|||
WebMoney: WMZ Z294115950220 WMR R409981405661 WME E134003968233 |
Visa 4274 3200 2453 6495 |
Это приложение перечисляет типичные проблемы и ошибки, которые могут
произойти и потенциальные решения, в дополнение к перечислению ошибок,
которые могут появиться, когда Вы вызываете MySQL из любого языка. Первый
раздел покрывает проблемы и решения. Подробная информация об ошибках
обеспечена: один список включает сообщения об ошибках сервера. Другой список
включает сообщения программы клиента. Есть несколько источников информации об ошибке в MySQL: Каждый запрос SQL выдает результаты в коде ошибки, значении
SQLSTATE и сообщении об ошибке, как описано в
разделе B.2. Эти ошибки возвращены с
сервера, см. раздел B.3. Описания ошибок сервера и клиента обеспечены позже в этом Приложении.
Для информации об ошибках, связанных с
Когда ошибка происходит в MySQL, сервер возвращает два типа значений: MySQL-код ошибки. Это значение является числовым. Это не
аналогично другим системам баз данных. Строка сообщения, которая обеспечивает текстовое описание
ошибки, также доступна. Когда ошибка происходит, код ошибки MySQL, значение SQLSTATE и строка
сообщения доступны через функции C API: Код ошибки MySQL: вызовите
Для готовых запросов соответствующие функции ошибок
Число ошибок, предупреждений и примечаний для предыдущего запроса может
быть получено вызовом
Первые два символа значения SQLSTATE указывают на класс ошибки: У программ MySQL есть доступ к нескольким типам информации об ошибке,
когда сервер возвращает ошибку. Например, клиент
mysql
выводит на экран ошибки, используя следующий формат:
Числовой код ошибки ( Для проверки на ошибки, используйте коды ошибки, а не сообщения об
ошибках. Сообщения об ошибках часто не изменяются, но это возможно. Также
если администратор базы данных изменяет языковые настройки, которые
затрагивают язык сообщений об ошибках, возможны проблемы. Коды ошибки устойчивы во всех релизах GA данного ряда MySQL. Прежде, чем
ряд достигает состояния GA, новые коды могут все еще
разрабатываться и подвержены изменениям. Информация об ошибке сервера прибывает из следующих исходных файлов.
Для деталей о способе, которым определена информация об ошибке, см.
MySQL Internals Manual. Информация о сообщении об ошибке перечислена в файле
Поскольку обновления бывают часто, возможно, что те файлы будут содержать
дополнительную информацию об ошибках, не перечисленную здесь.
Ошибка: Сообщение: Нет. Используется в конструкции других сообщений. Сообщение: Да. Используется в конструкции других сообщений.
Расширенный формат Сообщение: Can't create file '%s' (errno: %d - %s) Происходит при отказе создать или скопировать файл, необходимый
для некоторой работы. Возможные причины: проблема разрешений для исходного файла, целевой файл
уже существует, но не является записываемым. Сообщение: Can't create table '%s' (errno: %d - %s) Сообщение: Can't create database '%s' (errno: %d - %s) Сообщение: Can't create database '%s'; database exists Попытка создать базу данных провалилась, потому что база данных уже
существует. Удалите базу данных сначала, если Вы действительно хотите
заменить существующую базу данных, или добавьте предложение Сообщение: Can't drop database '%s'; database doesn't exist Сообщение: Error dropping database (can't rmdir '%s', errno: %d - %s) Сообщение: Can't read record in system table Возвращена Сообщение: Can't get status of '%s' (errno: %d - %s) Сообщение: Can't lock file (errno: %d - %s) Сообщение: Can't open file: '%s' (errno: %d - %s) Сообщение: Can't find file: '%s' (errno: %d - %s) Сообщение: Can't read dir of '%s' (errno: %d - %s) Сообщение: Record has changed since last read in table '%s' Сообщение: Can't write; duplicate key in table '%s' Сообщение: Error reading file '%s' (errno: %d - %s) Сообщение: Error on rename of '%s' to '%s' (errno: %d - %s) Сообщение: Error writing file '%s' (errno: %d - %s) Сообщение: '%s' is locked against change Сообщение: Sort aborted Сообщение: Got error %d - '%s' from storage engine Проверьте значение Сообщение: Table storage engine for '%s' doesn't have this option Сообщение: Can't find record in '%s' Сообщение: Incorrect information in file: '%s' Сообщение: Incorrect key file for table '%s'; try to repair it Сообщение: Old key file for table '%s'; repair it! Сообщение: Table '%s' is read only Сообщение: Out of memory; restart server and try again (needed %d bytes)
Сообщение: Out of sort memory, consider increasing server
sort buffer size Сообщение: Too many connections Сообщение: Out of memory; check if mysqld or some other process uses
all available memory; if not, you may have to use 'ulimit' to
allow mysqld to use more memory or you can add more swap space Сообщение: Can't get hostname for your address Сообщение: Bad handshake Сообщение: Access denied for user '%s'@'%s' to database '%s' Сообщение: Access denied for user '%s'@'%s' (using password: %s) Сообщение: No database selected Сообщение: Unknown command Сообщение: Column '%s' cannot be null Сообщение: Unknown database '%s' Сообщение: Table '%s' already exists Сообщение: Unknown table '%s' Сообщение: Column '%s' in %s is ambiguous.
%s = имя столбца.
%s = местоположение столбца (например, "список полей").
Вероятная причина: столбец появляется в запросе без соответствующей
квалификации, такой как в списке select или предложении ON. Примеры:
Квалифицируйте столбец с соответствующим именем таблицы:
Ошибка: Сообщение: Server shutdown in progress Сообщение: Unknown column '%s' in '%s' Сообщение: '%s' isn't in GROUP BY Сообщение: Can't group on '%s' Сообщение: Statement has sum functions and columns in same statement Сообщение: Column count doesn't match value count Сообщение: Identifier name '%s' is too long Сообщение: Duplicate column name '%s' Сообщение: Duplicate key name '%s' Сообщение: Duplicate entry '%s' for key %d Сообщение, возвращенное с этой ошибкой, использует строку формата для
Сообщение: Incorrect column specifier for column '%s' Сообщение: %s near '%s' at line %d Сообщение: Query was empty Сообщение: Not unique table/alias: '%s' Сообщение: Invalid default value for '%s' Сообщение: Multiple primary key defined Сообщение: Too many keys specified; max %d keys allowed Сообщение: Too many key parts specified; max %d parts allowed Сообщение: Specified key was too long; max key length is %d bytes Сообщение: Key column '%s' doesn't exist in table Сообщение: BLOB column '%s' can't be used in key specification with the
used table type Сообщение: Column length too big for column '%s' (max = %lu); use
BLOB or TEXT instead Сообщение: Incorrect table definition; there can be only one auto
column and it must be defined as a key Сообщение: %s: ready for connections.
Version: '%s' socket: '%s' port: %d Сообщение: %s: Normal shutdown Сообщение: %s: Shutdown complete Сообщение: %s: Forcing close of thread %ld user: '%s' Сообщение: Can't create IP socket Сообщение: Table '%s' has no index like the one used in CREATE
INDEX; recreate the table Сообщение: Field separator argument is not what is expected;
check the manual
Сообщение: You can't use fixed rowlength with BLOBs; please use
'fields terminated by'
Сообщение: The file '%s' must be in the database directory or be
readable by all
Сообщение: File '%s' already exists
Сообщение: Records: %ld Deleted: %ld Skipped: %ld Warnings: %ld
Сообщение: Records: %ld Duplicates: %ld
Сообщение: Incorrect prefix key; the used key part isn't a string,
the used length is longer than the key part, or the storage engine
doesn't support unique prefix keys
Сообщение: You can't delete all columns with ALTER TABLE; use
DROP TABLE instead
Сообщение: Can't DROP '%s'; check that column/key exists
Сообщение: Records: %ld Duplicates: %ld Warnings: %ld
Сообщение: You can't specify target table '%s' for update in FROM clause
Эта ошибка происходит для попыток выбрать из и изменить ту же самую
таблицу в пределах единственного запроса. Если попытка происходит в пределах
полученной таблицы, Вы можете избежать этой ошибки, устанавливая флаг
Сообщение: Unknown thread id: %lu Сообщение: You are not owner of thread %lu Сообщение: No tables used Сообщение: Too many strings for column %s and SET Сообщение: Can't generate a unique log-filename %s.(1-999) Сообщение: Table '%s' was locked with a READ lock and can't be updated
Сообщение: Table '%s' was not locked with LOCK TABLES Сообщение: BLOB, TEXT, GEOMETRY or JSON column '%s' can't
have a default value Сообщение: Incorrect database name '%s' Сообщение: Incorrect table name '%s' Сообщение: The SELECT would examine more than MAX_JOIN_SIZE rows;
check your WHERE and use SET SQL_BIG_SELECTS=1 or SET
MAX_JOIN_SIZE=# if the SELECT is okay Сообщение: Unknown error Сообщение: Unknown procedure '%s' Сообщение: Incorrect parameter count to procedure '%s' Сообщение: Incorrect parameters to procedure '%s' Сообщение: Unknown table '%s' in %s Сообщение: Column '%s' specified twice Сообщение: Invalid use of group function Сообщение: Table '%s' uses an extension that doesn't exist in
this MySQL version Сообщение: A table must have at least 1 column Сообщение: The table '%s' is full Сообщение: Unknown character set: '%s' Сообщение: Too many tables; MySQL can only use %d tables in a join Сообщение: Too many columns Сообщение: Row size too large. The maximum row size for the used
table type, not counting BLOBs, is %ld. This includes storage
overhead, check the manual. You have to change some columns to
TEXT or BLOBs Сообщение: Thread stack overrun: Used: %ld of a %ld stack. Use
'mysqld --thread_stack=#' to specify a bigger stack if needed Сообщение: Cross dependency found in OUTER JOIN; examine
your ON conditions Сообщение: Table handler doesn't support NULL in given index. Please
change column '%s' to be NOT NULL or use another handler Сообщение: Can't load function '%s' Сообщение: Can't initialize function '%s'; %s Сообщение: No paths allowed for shared library Сообщение: Function '%s' already exists Сообщение: Can't open shared library '%s' (errno: %d %s) Сообщение: Can't find symbol '%s' in library Сообщение: Function '%s' is not defined Сообщение: Host '%s' is blocked because of many connection errors;
unblock with 'mysqladmin flush-hosts' Сообщение: Host '%s' is not allowed to connect to this MySQL server Сообщение: You are using MySQL as an anonymous user and anonymous
users are not allowed to change passwords Сообщение: You must have privileges to update tables in the mysql
database to be able to change passwords for others Сообщение: Can't find any matching row in the user table Сообщение: Rows matched: %ld Changed: %ld Warnings: %ld Сообщение: Can't create a new thread (errno %d); if you are not out
of available memory, you can consult the manual for a possible
OS-dependent bug Сообщение: Column count doesn't match value count at row %ld Сообщение: Can't reopen table: '%s' Сообщение: Invalid use of NULL value Сообщение: Got error '%s' from regexp Сообщение: Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no
GROUP columns is illegal if there is no GROUP BY clause Сообщение: There is no such grant defined for user '%s' on host '%s' Сообщение: %s command denied to user '%s'@'%s' for table '%s' Сообщение: %s command denied to user '%s'@'%s' for
column '%s' in table '%s' Сообщение: Illegal GRANT/REVOKE command; please consult the manual
to see which privileges can be used Сообщение: The host or user argument to GRANT is too long Сообщение: Table '%s.%s' doesn't exist Сообщение: There is no such grant defined for user '%s' on
host '%s' on table '%s' Сообщение: The used command is not allowed with this MySQL version Сообщение: You have an error in your SQL syntax; check the manual
that corresponds to your MySQL server version for the right
syntax to use Сообщение: Aborted connection %ld to db: '%s' user: '%s' (%s) Сообщение: Got a packet bigger than 'max_allowed_packet' bytes Сообщение: Got a read error from the connection pipe Сообщение: Got an error from fcntl() Сообщение: Got packets out of order Сообщение: Couldn't uncompress communication packet Сообщение: Got an error reading communication packets Сообщение: Got timeout reading communication packets Сообщение: Got an error writing communication packets Сообщение: Got timeout writing communication packets Сообщение: Result string is longer than 'max_allowed_packet' bytes Сообщение: The used table type doesn't support BLOB/TEXT columns Сообщение: The used table type doesn't support AUTO_INCREMENT columns Сообщение: Incorrect column name '%s' Сообщение: The used storage engine can't index column '%s' Сообщение: Unable to open underlying table which is differently
defined or of non-MyISAM type or doesn't exist Сообщение: Can't write, because of unique constraint, to table '%s' Сообщение: BLOB/TEXT column '%s' used in key specification
without a key length Сообщение: All parts of a PRIMARY KEY must be NOT NULL; if you need
NULL in a key, use UNIQUE instead Сообщение: Result consisted of more than one row Сообщение: This table type requires a primary key Сообщение: You are using safe update mode and you tried to update a
table without a WHERE that uses a KEY column Сообщение: Key '%s' doesn't exist in table '%s' Сообщение: Can't open table Сообщение: The storage engine for the table doesn't support %s Сообщение: You are not allowed to execute this command in a transaction
Сообщение: Got error %d - '%s' during COMMIT Сообщение: Got error %d - '%s' during ROLLBACK Сообщение: Got error %d during FLUSH_LOGS Сообщение: Aborted connection %u to db: '%s' user: '%s' host: '%s' (%s)
Сообщение: Error from master: '%s' Сообщение: Net error reading from master Сообщение: Net error writing to master Сообщение: Can't find FULLTEXT index matching the column list Сообщение: Can't execute the given command because you have active
locked tables or an active transaction Сообщение: Unknown system variable '%s'
Сообщение: Table '%s' is marked as crashed and should be repaired
Сообщение: Table '%s' is marked as crashed and last
(automatic?) repair failed
Сообщение: Some non-transactional changed tables couldn't be rolled back
Сообщение: Multi-statement transaction required more than
'max_binlog_cache_size' bytes of storage; increase this mysqld
variable and try again
Сообщение: This operation requires a running slave; configure slave
and do START SLAVE
Сообщение: The server is not configured as slave; fix in config file
or with CHANGE MASTER TO
Сообщение: Could not initialize master info structure; more error
messages can be found in the MySQL error log
Сообщение: Could not create slave thread; check system resources
Сообщение: User %s already has more than 'max_user_connections'
active connections
Сообщение: You may only use constant expressions with SET
Сообщение: Lock wait timeout exceeded; try restarting transaction Сообщение: The total number of locks exceeds the lock table size Сообщение: Update locks cannot be acquired during a
READ UNCOMMITTED transaction Сообщение: Incorrect arguments to %s Сообщение: '%s'@'%s' is not allowed to create new users Сообщение: Deadlock found when trying to get lock;
try restarting transaction Сообщение: The used table type doesn't support FULLTEXT indexes Сообщение: Cannot add foreign key constraint Сообщение: Cannot add or update a child row: a foreign
key constraint fails Сообщение: Cannot delete or update a parent row: a foreign
key constraint fails Сообщение: Error connecting to master: %s Сообщение: Error when executing command %s: %s Сообщение: Incorrect usage of %s and %s Сообщение: The used SELECT statements have a different number of columns
Сообщение: Can't execute the query because you have a
conflicting read lock
Сообщение: Mixing of transactional and non-transactional tables is disabled
Сообщение: Option '%s' used twice in statement
Сообщение: User '%s' has exceeded the '%s' resource (current value: %ld)
Сообщение: Access denied; you need (at least one of) the %s
privilege(s) for this operation
Сообщение: Variable '%s' is a SESSION variable and can't be used
with SET GLOBAL
Сообщение: Variable '%s' is a GLOBAL variable and should be set
with SET GLOBAL
Сообщение: Variable '%s' doesn't have a default value
Сообщение: Variable '%s' can't be set to the value of '%s'
Сообщение: Incorrect argument type to variable '%s'
Сообщение: Variable '%s' can only be set, not read
Сообщение: Incorrect usage/placement of '%s'
Сообщение: This version of MySQL doesn't yet support '%s'
Сообщение: Got fatal error %d from master when reading data from
binary log: '%s'
Сообщение: Slave SQL thread ignored the query because of
replicate-*-table rules
Сообщение: Variable '%s' is a %s variable
Сообщение: Incorrect foreign key definition for '%s': %s
Сообщение: Key reference and table reference don't match
Сообщение: Operand should contain %d column(s)
Сообщение: Subquery returns more than 1 row
Сообщение: Unknown prepared statement handler (%.*s) given to %s
Сообщение: Help database is corrupt or does not exist
Сообщение: Converting column '%s' from %s to %s
Сообщение: Reference '%s' not supported (%s)
Сообщение: Every derived table must have its own alias
Сообщение: Select %u was reduced during optimization
Сообщение: Table '%s' from one of the SELECTs cannot be used in %s
Сообщение: Client does not support authentication protocol requested
by server; consider upgrading MySQL client
Сообщение: All parts of a SPATIAL index must be NOT NULL
Сообщение: COLLATION '%s' is not valid for CHARACTER SET '%s'
Сообщение: Uncompressed data size too large; the maximum size is %d
(probably, length of uncompressed data was corrupted)
Сообщение: ZLIB: Not enough memory
Сообщение: ZLIB: Not enough room in the output buffer (probably,
length of uncompressed data was corrupted)
Сообщение: ZLIB: Input data corrupted
Сообщение: Row %u was cut by GROUP_CONCAT()
Сообщение: Row %ld doesn't contain data for all columns
Сообщение: Row %ld was truncated; it contained more data than there
were input columns
Сообщение: Column set to default value; NULL supplied to NOT NULL
column '%s' at row %ld
Сообщение: Out of range value for column '%s' at row %ld
Сообщение: Data truncated for column '%s' at row %ld
Сообщение: Using storage engine %s for table '%s'
Сообщение: Illegal mix of collations (%s,%s) and (%s,%s) for operation '%s'
Сообщение: Can't revoke all privileges for one or more of the requested users
Сообщение: Illegal mix of collations (%s,%s), (%s,%s),
(%s,%s) for operation '%s'
Сообщение: Illegal mix of collations for operation '%s'
Сообщение: Variable '%s' is not a variable component (can't be used
as XXXX.variable_name)
Сообщение: Unknown collation: '%s'
Сообщение: SSL parameters in CHANGE MASTER are ignored because this
MySQL slave was compiled without SSL support; they can be used
later if MySQL slave with SSL is started
Сообщение: Server is running in --secure-auth mode, but '%s'@'%s'
has a password in the old format; please change the password to
the new format
Сообщение: Field or reference '%s%s%s%s%s' of SELECT #%d was
resolved in SELECT #%d
Сообщение: Incorrect parameter or combination of parameters for
START SLAVE UNTIL
Сообщение: It is recommended to use --skip-slave-start when doing
step-by-step replication with START SLAVE UNTIL; otherwise, you
will get problems if you get an unexpected slave's mysqld restart
Сообщение: SQL thread is not to be started so UNTIL options are
ignored
Сообщение: Incorrect index name '%s'
Сообщение: Incorrect catalog name '%s'
Сообщение: Query cache failed to set size %lu; new query cache size
is %lu
Сообщение: Column '%s' cannot be part of FULLTEXT index
Сообщение: Unknown key cache '%s'
Сообщение: MySQL is started in --skip-name-resolve mode; you must
restart it without this switch for this grant to work
Сообщение: Unknown storage engine '%s'
Сообщение: '%s' is deprecated and will be removed in a future
release. Please use %s instead
Сообщение: The target table %s of the %s is not updatable
Сообщение: The '%s' feature is disabled; you need MySQL built with
'%s' to have it working
Сообщение: The MySQL server is running with the %s option so it
cannot execute this statement
Сообщение: Column '%s' has duplicated value '%s' in %s
Сообщение: Truncated incorrect %s value: '%s'
Сообщение: Invalid ON UPDATE clause for '%s' column
Сообщение: This command is not supported in the prepared
statement protocol yet
Сообщение: Got error %d '%s' from %s
Сообщение: Got temporary error %d '%s' from %s
Сообщение: Unknown or incorrect time zone: '%s'
Сообщение: Invalid TIMESTAMP value in column '%s' at row %ld
Сообщение: Invalid %s character string: '%s'
Сообщение: Result of %s() was larger than
max_allowed_packet (%ld) - truncated
Сообщение: Conflicting declarations: '%s%s' and '%s%s'
Сообщение: Can't create a %s from within another stored routine
Сообщение: %s %s already exists
Сообщение: %s %s does not exist
Сообщение: Failed to DROP %s %s
Сообщение: Failed to CREATE %s %s
Сообщение: %s with no matching label: %s
Сообщение: Redefining label %s
Сообщение: End-label %s without match
Сообщение: Referring to uninitialized variable %s
Сообщение: PROCEDURE %s can't return a result set in the given context
Сообщение: RETURN is only allowed in a FUNCTION
Сообщение: %s is not allowed in stored procedures
Сообщение: The update log is deprecated and replaced by the binary
log; SET SQL_LOG_UPDATE has been ignored.
Сообщение: The update log is deprecated and replaced by the binary
log; SET SQL_LOG_UPDATE has been translated to SET SQL_LOG_BIN.
Сообщение: Query execution was interrupted
Сообщение: Incorrect number of arguments for %s %s; expected %u, got
%u
Сообщение: Undefined CONDITION: %s
Сообщение: No RETURN found in FUNCTION %s
Сообщение: FUNCTION %s ended without RETURN
Сообщение: Cursor statement must be a SELECT
Сообщение: Cursor SELECT must not have INTO
Сообщение: Undefined CURSOR: %s
Сообщение: Cursor is already open
Сообщение: Cursor is not open
Сообщение: Undeclared variable: %s
Сообщение: Incorrect number of FETCH variables
Сообщение: No data - zero rows fetched, selected, or processed
Сообщение: Duplicate parameter: %s
Сообщение: Duplicate variable: %s
Сообщение: Duplicate condition: %s
Сообщение: Duplicate cursor: %s
Сообщение: Failed to ALTER %s %s
Сообщение: Subquery value not supported
Сообщение: %s is not allowed in stored function or trigger
Сообщение: Variable or condition declaration after cursor
or handler declaration
Сообщение: Cursor declaration after handler declaration
Сообщение: Case not found for CASE statement
Сообщение: Configuration file '%s' is too big
Сообщение: Malformed file type header in file '%s'
Сообщение: Unexpected end of file while parsing comment '%s'
Сообщение: Error while parsing parameter '%s' (line: '%s')
Сообщение: Unexpected end of file while skipping unknown parameter
'%s'
Сообщение: EXPLAIN/SHOW can not be issued; lacking privileges
for underlying table
Сообщение: '%s.%s' is not %s Названный объект является неправильным для типа предпринятой работы. Это
должен быть объект названного типа. Пример:
Сообщение: Column '%s' is not updatable
Сообщение: View's SELECT contains a '%s' clause
Сообщение: View's SELECT contains a variable or parameter
Сообщение: View's SELECT refers to a temporary table '%s'
Сообщение: View's SELECT and view's field list have different column counts
Сообщение: View merge algorithm can't be used here for now (assumed
undefined algorithm)
Сообщение: View being updated does not have complete key of
underlying table in it
Сообщение: View '%s.%s' references invalid table(s) or column(s) or
function(s) or definer/invoker of view lack rights to use them
Сообщение: Can't drop or alter a %s from within another stored routine
Сообщение: Trigger already exists
Сообщение: Trigger does not exist
Сообщение: Trigger's '%s' is view or temporary table
Сообщение: Updating of %s row is not allowed in %strigger
Сообщение: There is no %s row in %s trigger
Сообщение: Field '%s' doesn't have a default value
Сообщение: Division by 0
Сообщение: Incorrect %s value: '%s' for column '%s' at row %ld
Сообщение: Illegal %s '%s' value found during parsing
Сообщение: CHECK OPTION on non-updatable view '%s.%s'
Сообщение: CHECK OPTION failed '%s.%s'
Сообщение: %s command denied to user '%s'@'%s' for routine '%s'
Сообщение: Failed purging old relay logs: %s
Сообщение: Target log not found in binlog index
Сообщение: I/O error reading log index file
Сообщение: Server configuration does not permit binlog purge
Сообщение: Failed on fseek()
Сообщение: Fatal error during log purge
Сообщение: A purgeable log is in use, will not purge
Сообщение: Unknown error during log purge
Сообщение: Failed initializing relay log position: %s
Сообщение: You are not using binary logging
Сообщение: The '%s' syntax is reserved for purposes internal to the
MySQL server
Сообщение: Prepared statement contains too many placeholders
Сообщение: Key part '%s' length cannot be 0
Сообщение: View text checksum failed
Сообщение: Can not modify more than one base table
through a join view '%s.%s'
Сообщение: Can not insert into join view '%s.%s' without fields list
Сообщение: Can not delete from join view '%s.%s'
Сообщение: Operation %s failed for %s
Сообщение: XAER_NOTA: Unknown XID
Сообщение: XAER_INVAL: Invalid arguments (or unsupported command)
Сообщение: XAER_RMFAIL: The command cannot be executed when global
transaction is in the %s state
Сообщение: XAER_OUTSIDE: Some work is done outside global transaction
Сообщение: XAER_RMERR: Fatal error occurred in the transaction
branch - check your data for consistency
Сообщение: XA_RBROLLBACK: Transaction branch was rolled back
Сообщение: There is no such grant defined for user '%s' on
host '%s' on routine '%s'
Сообщение: Failed to grant EXECUTE and ALTER ROUTINE privileges
Сообщение: Failed to revoke all privileges to dropped routine
Сообщение: Data too long for column '%s' at row %ld
Сообщение: Bad SQLSTATE: '%s'
Сообщение: %s: ready for connections. Version: '%s' socket: '%s'
port: %d %s
Сообщение: Can't load value from file with fixed size rows to variable
Сообщение: You are not allowed to create a user with GRANT
Сообщение: Incorrect %s value: '%s' for function %s
Сообщение: Table definition has changed, please retry transaction
Сообщение: Duplicate handler declared in the same block
Сообщение: OUT or INOUT argument %d for routine %s is not a variable
or NEW pseudo-variable in BEFORE trigger
Сообщение: Not allowed to return a result set from a %s
Сообщение: Cannot get geometry object from data you send to
the GEOMETRY field
Сообщение: This function has none of DETERMINISTIC, NO SQL, or READS
SQL DATA in its declaration and binary logging is enabled (you
*might* want to use the less safe log_bin_trust_function_creators variable)
Сообщение: You do not have the SUPER privilege and binary logging is
enabled (you *might* want to use the less safe
log_bin_trust_function_creators variable)
Сообщение: The statement (%lu) has no open cursor.
Сообщение: Explicit or implicit commit is not allowed in stored
function or trigger.
Сообщение: Field of view '%s.%s' underlying table doesn't
have a default value
Сообщение: Recursive stored functions and triggers are not allowed.
Сообщение: Too big scale %d specified for column '%s'. Maximum is %lu.
Сообщение: Too-big precision %d specified for '%s'. Maximum is %lu.
Сообщение: For float(M,D), double(M,D) or decimal(M,D), M must be
>= D (column '%s').
Сообщение: You can't combine write-locking of system tables with
other tables or lock types
Сообщение: Unable to connect to foreign data source: %s
Сообщение: There was a problem processing the query on the foreign
data source. Data source error: %s
Сообщение: The foreign data source you are trying to reference does
not exist. Data source error: %s
Сообщение: Can't create federated table. The data source connection
string '%s' is not in the correct format
Сообщение: The data source connection string '%s' is not in
the correct format
Сообщение: Trigger in wrong schema
Сообщение: Thread stack overrun: %ld bytes used of a %ld byte stack,
and %ld bytes needed. Use 'mysqld --thread_stack=#' to
specify a bigger stack.
Сообщение: Routine body for '%s' is too long
Сообщение: Cannot drop default keycache
Сообщение: Display width out of range for column '%s' (max = %lu)
Сообщение: XAER_DUPID: The XID already exists
Сообщение: Datetime function: %s field overflow
Сообщение: Can't update table '%s' in stored function/trigger
because it is already used by statement which invoked this
stored function/trigger.
Сообщение: The definition of table '%s' prevents operation %s on table '%s'.
Сообщение: The prepared statement contains a stored routine call
that refers to that same statement. It's not allowed to execute a
prepared statement in such a recursive manner
Сообщение: Not allowed to set autocommit from a stored function or trigger
Сообщение: View '%s'.'%s' has no definer information (old table
format). Current user is used as definer.
Please recreate the view!
Сообщение: You need the SUPER privilege for creation view with
'%s'@'%s' definer
Сообщение: The user specified as a definer ('%s'@'%s') does not
exist
Сообщение: Changing schema from '%s' to '%s' is not allowed.
Сообщение: Cannot delete or update a parent row: a foreign
key constraint fails (%s)
Сообщение: Cannot add or update a child row: a foreign key
constraint fails (%s)
Сообщение: Variable '%s' must be quoted with `...`, or renamed
Сообщение: No definer attribute for trigger '%s'.'%s'. It's
disallowed to create trigger without definer.
Сообщение: '%s' has an old format, you should re-create the '%s' object(s)
Сообщение: Recursive limit %d (as set by the max_sp_recursion_depth
variable) was exceeded for routine %s
Сообщение: Incorrect routine name '%s'
Сообщение: Table upgrade required. Please do "REPAIR TABLE `%s`" or
dump/reload to fix it!
Сообщение: AGGREGATE is not supported for stored functions
Сообщение: Can't create more than max_prepared_stmt_count statements
(current value: %lu)
Сообщение: `%s`.`%s` contains view recursion
Сообщение: Non-grouping field '%s' is used in %s clause
Сообщение: The used table type doesn't support SPATIAL indexes
Сообщение: Triggers can not be created on system tables
Сообщение: Leading spaces are removed from name '%s'
Сообщение: Failed to read auto-increment value from storage engine
Сообщение: user name
Сообщение: host name
Сообщение: String '%s' is too long for %s (should be no longer than
%d)
Сообщение: The target table %s of the %s is not insertable-into
Сообщение: Table '%s' is differently defined or of non-MyISAM type
or doesn't exist
Сообщение: Too high level of nesting for select
Сообщение: Name '%s' has become ''
Сообщение: First character of the FIELDS TERMINATED string is
ambiguous; please use non-optional and non-empty
FIELDS ENCLOSED BY
Сообщение: The foreign server, %s, you are trying to create already exists.
Сообщение: The foreign server name you are trying to reference does
not exist. Data source error: %s
Сообщение: Table storage engine '%s' does not support the create option '%s'
Сообщение: Syntax error: %s PARTITIONING requires definition of
VALUES %s for each partition
Сообщение: Only %s PARTITIONING can use VALUES %s in partition
definition
Сообщение: MAXVALUE can only be used in last partition definition
Сообщение: Wrong number of partitions defined, mismatch
with previous setting
Сообщение: Wrong number of subpartitions defined, mismatch
with previous setting
Сообщение: Constant, random or timezone-dependent expressions in
(sub)partitioning function are not allowed
Сообщение: Field in list of fields for partition function not found in table
Сообщение: The partition info in the frm file is not consistent with
what can be written into the frm file
Сообщение: The %s function returns the wrong type
Сообщение: For %s partitions each partition must be defined
Сообщение: VALUES LESS THAN value must be strictly increasing for
each partition
Сообщение: VALUES value must be of same type as partition function
Сообщение: Multiple definition of same constant in list partitioning
Сообщение: Partitioning can not be used stand-alone in query
Сообщение: The mix of handlers in the partitions is not allowed in
this version of MySQL
Сообщение: For the partitioned engine it is necessary to define all %s
Сообщение: Too many partitions (including subpartitions) were defined
Сообщение: It is only possible to mix RANGE/LIST partitioning with
HASH/KEY partitioning for subpartitioning
Сообщение: Failed to create specific handler file
Сообщение: A BLOB field is not allowed in partition function
Сообщение: A %s must include all columns in the table's partitioning function
Сообщение: Number of %s = 0 is not an allowed value
Сообщение: Partition management on a not partitioned table is not possible
Сообщение: Foreign keys are not yet supported in
conjunction with partitioning
Сообщение: Error in list of partitions to %s
Сообщение: Cannot remove all partitions, use DROP TABLE instead
Сообщение: COALESCE PARTITION can only be used on HASH/KEY partitions
Сообщение: REORGANIZE PARTITION can only be used to reorganize
partitions not to change their numbers
Сообщение: REORGANIZE PARTITION without parameters can only be used
on auto-partitioned tables using HASH PARTITIONs
Сообщение: %s PARTITION can only be used on RANGE/LIST partitions
Сообщение: Trying to Add partition(s) with wrong number of subpartitions
Сообщение: At least one partition must be added
Сообщение: At least one partition must be coalesced
Сообщение: More partitions to reorganize than there are partitions
Сообщение: Duplicate partition name %s
Сообщение: It is not allowed to shut off binlog on this command
Сообщение: When reorganizing a set of partitions they must be
in consecutive order
Сообщение: Reorganize of range partitions cannot change total ranges
except for last partition where it can extend the range
Сообщение: Partition function not supported in this version for this
handler
Сообщение: The %s handler only supports 32 bit integers in VALUES
Сообщение: Plugin '%s' is not loaded
Сообщение: Incorrect %s value: '%s'
Сообщение: Table has no partition for value %s
Сообщение: It is not allowed to specify %s more than once
Сообщение: Failed to create %s
Сообщение: Failed to drop %s
Сообщение: The handler doesn't support autoextend of tablespaces
Сообщение: A size parameter was incorrectly specified, either number
or on the form 10M
Сообщение: The size number was correct but we don't allow the digit
part to be more than 2 billion
Сообщение: Failed to alter: %s
Сообщение: Writing one row to the row-based binary log failed
Сообщение: Event '%s' already exists
Сообщение: Unknown event '%s'
Сообщение: INTERVAL is either not positive or too big
Сообщение: ENDS is either invalid or before STARTS
Сообщение: Event execution time is in the past. Event has been
disabled
Сообщение: Same old and new event name
Сообщение: Cannot drop index '%s': needed in a foreign key constraint Для оптимальной работы с запросами DML Когда Вы удаляете индекс,
Сообщение: The syntax '%s' is deprecated and will be removed in
MySQL %s. Please use %s instead
Сообщение: You can't use locks with log tables.
Сообщение: Upholding foreign key constraints for table '%s', entry
'%s', key %d would lead to a duplicate entry
Сообщение: Column count of mysql.%s is wrong. Expected %d, found %d.
Created with MySQL %d, now running %d. Please use mysql_upgrade to
fix this error.
Сообщение: Cannot switch out of the row-based binary log format when
the session has open temporary tables
Сообщение: Cannot change the binary logging format inside a stored
function or trigger
Сообщение: Cannot create temporary table with partitions
Сообщение: Partition constant is out of partition function domain
Сообщение: This partition function is not allowed
Сообщение: Error in DDL log
Сообщение: Not allowed to use NULL value in VALUES LESS THAN
Сообщение: Incorrect partition name
Сообщение: Transaction characteristics can't be changed while a
transaction is in progress
Сообщение: ALTER TABLE causes auto_increment resequencing, resulting
in duplicate entry '%s' for key '%s'
Сообщение: Error during starting/stopping of the scheduler. Error code %u
Сообщение: Engine cannot be used in partitioned tables
Сообщение: Decoding of base64 string failed
Сообщение: Recursion of EVENT DDL statements is forbidden when body
is present
Сообщение: Only integers allowed as number here
Сообщение: This storage engine cannot be used for log tables
Сообщение: You cannot '%s' a log table if logging is enabled
Сообщение: Cannot rename '%s'. When logging enabled, rename to/from
log table must rename two tables: the log table to an archive
table and another table back to '%s'
Сообщение: Incorrect parameter count in the call to native function
'%s'
Сообщение: Incorrect parameters in the call to native function '%s'
Сообщение: Incorrect parameters in the call to stored function %s
Сообщение: This function '%s' has the same name as a native function
Сообщение: Duplicate entry '%s' for key '%s'
The format string for this error is also used with
Сообщение: Too many files opened, please execute the command again
Сообщение: Event execution time is in the past and ON COMPLETION NOT
PRESERVE is set. The event was dropped immediately after creation.
Сообщение: Event execution time is in the past and ON COMPLETION NOT
PRESERVE is set. The event was not changed. Specify a time
in the future.
Сообщение: The incident %s occured on the master. Сообщение: %s
Сообщение: Table has no partition for some existing values
Сообщение: Unsafe statement written to the binary log using
statement format since BINLOG_FORMAT = STATEMENT. %s
Сообщение: Fatal error: %s
Сообщение: Relay log read failure: %s
Сообщение: Relay log write failure: %s
Сообщение: Failed to create %s
Сообщение: Master command %s failed: %s
Сообщение: Binary logging not possible. Сообщение: %s
Сообщение: View `%s`.`%s` has no creation context
Сообщение: Creation context of view `%s`.`%s' is invalid
Сообщение: Corrupted TRG file for table `%s`.`%s`
Сообщение: Triggers for table `%s`.`%s` have no creation context
Сообщение: Trigger creation context of table `%s`.`%s` is invalid
Сообщение: Creation context of event `%s`.`%s` is invalid
Сообщение: Cannot open table for trigger `%s`.`%s`
Сообщение: The BINLOG statement of type `%s` was not preceded by a
format description BINLOG statement.
Сообщение: Corrupted replication event was detected
Сообщение: Being purged log %s was not found
Сообщение: XA_RBTIMEOUT: Transaction branch was rolled back: took too long
Сообщение: XA_RBDEADLOCK: Transaction branch was rolled back:
deadlock was detected
Сообщение: Prepared statement needs to be re-prepared
Сообщение: The master info structure does not exist
Сообщение: <%s> option ignored
Сообщение: Built-in plugins cannot be deleted
Сообщение: Plugin is busy and will be uninstalled on shutdown
Сообщение: %s variable '%s' is read-only. Use SET %s to assign the value
Сообщение: Storage engine %s does not support rollback for this
statement. Transaction rolled back and
must be restarted
Сообщение: Unexpected master's heartbeat data: %s
Сообщение: The requested value for the heartbeat period is either
negative or exceeds the maximum allowed (%s seconds).
Сообщение: Bad schema for mysql.ndb_replication table. Сообщение: %s
Сообщение: Error in parsing conflict function. Сообщение: %s
Сообщение: Write to exceptions table failed. Сообщение: %s
Сообщение: Comment for table '%s' is too long (max = %lu)
Сообщение: Comment for field '%s' is too long (max = %lu)
Сообщение: FUNCTION %s does not exist. Check the 'Function Name
Parsing and Resolution' section in the Reference Manual
Сообщение: Database
Сообщение: Table
Сообщение: Partition
Сообщение: Subpartition
Сообщение: Temporary
Сообщение: Renamed
Сообщение: Too many active concurrent transactions
Сообщение: Non-ASCII separator arguments are not fully supported
Сообщение: debug sync point wait timed out
Сообщение: debug sync point hit limit reached
Сообщение: Duplicate condition information item '%s'
Сообщение: Unhandled user-defined warning condition
Сообщение: Unhandled user-defined not found condition
Сообщение: Unhandled user-defined exception condition
Сообщение: RESIGNAL when handler not active
Сообщение: SIGNAL/RESIGNAL can only use a CONDITION defined with SQLSTATE
Сообщение: Data truncated for condition item '%s'
Сообщение: Data too long for condition item '%s'
Сообщение: Unknown locale: '%s'
Сообщение: The requested server id %d clashes with the slave startup
option --replicate-same-server-id
Сообщение: Query cache is disabled; restart the server with
query_cache_type=1 to enable it
Сообщение: Duplicate partition field name '%s'
Сообщение: Inconsistency in usage of column lists for partitioning
Сообщение: Partition column values of incorrect type
Сообщение: Too many fields in '%s'
Сообщение: Cannot use MAXVALUE as value in VALUES IN
Сообщение: Cannot have more than one value for this type of %s partitioning
Сообщение: Row expressions in VALUES IN only allowed for multi-field
column partitioning
Сообщение: Field '%s' is of a not allowed type for this type of partitioning
Сообщение: The total length of the partitioning fields is too large
Сообщение: Cannot execute statement: impossible to write to binary
log since both row-incapable engines and statement-incapable
engines are involved.
Сообщение: Cannot execute statement: impossible to write to binary
log since BINLOG_FORMAT = ROW and at least one table uses a
storage engine limited to statement-based logging.
Сообщение: Cannot execute statement: impossible to write to binary
log since statement is unsafe, storage engine is limited to
statement-based logging, and BINLOG_FORMAT = MIXED. %s
Сообщение: Cannot execute statement: impossible to write to binary
log since statement is in row format and at least one table uses a
storage engine limited to statement-based logging.
Сообщение: Cannot execute statement: impossible to write to binary
log since BINLOG_FORMAT = STATEMENT and at least one table uses a
storage engine limited to row-based logging.%s
Сообщение: Cannot execute statement: impossible to write to binary
log since statement is in row format and
BINLOG_FORMAT = STATEMENT.
Сообщение: Cannot execute statement: impossible to write to binary
log since more than one engine is involved and at least one engine
is self-logging.
Сообщение: The statement is unsafe because it uses a LIMIT clause.
This is unsafe because the set of rows included
cannot be predicted.
Сообщение: The statement is unsafe because it uses the general log,
slow query log, or performance_schema table(s). This is unsafe
because system tables may differ on slaves.
Сообщение: Statement is unsafe because it invokes a trigger or a
stored function that inserts into an AUTO_INCREMENT column.
Inserted values cannot be logged correctly.
Сообщение: Statement is unsafe because it uses a UDF which may not
return the same value on the slave.
Сообщение: Statement is unsafe because it uses a system variable
that may have a different value on the slave.
Сообщение: Statement is unsafe because it uses a system function
that may return a different value on the slave.
Сообщение: Statement is unsafe because it accesses a
non-transactional table after accessing a transactional table
within the same transaction.
Сообщение: %s Statement: %s
Сообщение: Column %d of table '%s.%s' cannot be converted from type
'%s' to type '%s'
Сообщение: Can't create conversion table for table '%s.%s'
Сообщение: Cannot modify @@session.binlog_format inside a transaction
Сообщение: The path specified for %s is too long.
Сообщение: '%s' is deprecated and will be removed in a future release.
Сообщение: Native table '%s'.'%s' has the wrong structure
Сообщение: Invalid performance_schema usage.
Сообщение: Table '%s'.'%s' was skipped since its definition is being
modified by concurrent DDL statement
Сообщение: Cannot modify
@@session.binlog_direct_non_transactional_updates inside a transaction
Сообщение: Cannot change the binlog direct flag inside a stored
function or trigger
Сообщение: A SPATIAL index may only contain a geometrical type column
Сообщение: Comment for index '%s' is too long (max = %lu)
Сообщение: Wait on a lock was aborted due to a pending exclusive lock
Сообщение: %s value is out of range in '%s'
Сообщение: A variable of a non-integer based type in LIMIT clause
Сообщение: Mixing self-logging and non-self-logging engines in a
statement is unsafe.
Сообщение: Statement accesses nontransactional table as well as
transactional or temporary table, and writes to any of them.
Сообщение: Cannot modify @@session.sql_log_bin inside a transaction
Сообщение: Cannot change the sql_log_bin inside a stored function or trigger
Сообщение: Failed to read from the .par file
Сообщение: VALUES value for partition '%s' must have type INT
Сообщение: Access denied for user '%s'@'%s'
Сообщение: SET PASSWORD has no significance for users
authenticating via plugins
Сообщение: Cannot truncate a table referenced in a
foreign key constraint (%s)
Сообщение: Plugin '%s' is force_plus_permanent and can not be unloaded
Сообщение: The requested value for the heartbeat period is less than
1 millisecond. The value is reset to 0, meaning that heartbeating
will effectively be disabled.
Сообщение: The requested value for the heartbeat period exceeds the
value of `slave_net_timeout' seconds. A sensible value for the
period should be less than the timeout.
Сообщение: Multi-row statements required more than
'max_binlog_stmt_cache_size' bytes of storage; increase this
mysqld variable and try again
Сообщение: Primary key/partition key update is not allowed since the
table is updated both as '%s' and '%s'.
Сообщение: Table rebuild required. Please do "ALTER TABLE `%s`
FORCE" or dump/reload to fix it!
Сообщение: The value of '%s' should be no less than the value of '%s'
Сообщение: Index column size too large. The maximum column size is %lu bytes.
Сообщение: Trigger '%s' has an error in its body: '%s'
Сообщение: Unknown trigger has an error in its body: '%s'
Сообщение: Index %s is corrupted
Сообщение: Undo log record is too big.
Сообщение: INSERT IGNORE... SELECT is unsafe because the order in
which rows are retrieved by the SELECT determines which (if any)
rows are ignored. This order cannot be predicted and may differ on
master and the slave.
Сообщение: INSERT... SELECT... ON DUPLICATE KEY UPDATE is unsafe
because the order in which rows are retrieved by the SELECT
determines which (if any) rows are updated. This order cannot be
predicted and may differ on master and the slave.
Сообщение: REPLACE... SELECT is unsafe because the order in which
rows are retrieved by the SELECT determines which (if any) rows
are replaced. This order cannot be predicted and may differ on
master and the slave.
Сообщение: CREATE... IGNORE SELECT is unsafe because the order in
which rows are retrieved by the SELECT determines which (if any)
rows are ignored. This order cannot be predicted and may differ on
master and the slave.
Сообщение: CREATE... REPLACE SELECT is unsafe because the order in
which rows are retrieved by the SELECT determines which (if any)
rows are replaced. This order cannot be predicted and may differ
on master and the slave.
Сообщение: UPDATE IGNORE is unsafe because the order in which rows
are updated determines which (if any) rows are ignored. This order
cannot be predicted and may differ on master and the slave.
Сообщение: Plugin '%s' is marked as not dynamically uninstallable.
You have to stop the server to uninstall it.
Сообщение: Plugin '%s' is marked as not dynamically installable. You
have to stop the server to install it.
Сообщение: Statements writing to a table with an auto-increment
column after selecting from another table are unsafe because the
order in which rows are retrieved determines what (if any) rows
will be written. This order cannot be predicted and may differ on
master and the slave.
Сообщение: CREATE TABLE... SELECT... on a table with an
auto-increment column is unsafe because the order in which rows
are retrieved by the SELECT determines which (if any) rows are
inserted. This order cannot be predicted and may differ on master
and the slave.
Сообщение: INSERT... ON DUPLICATE KEY UPDATE on a table with more
than one UNIQUE KEY is unsafe
Сообщение: Table is being used in foreign key check.
Сообщение: Storage engine '%s' does not support system tables. [%s.%s]
Сообщение: INSERT into autoincrement field which is not the first
part in the composed primary key is unsafe.
Сообщение: Cannot load from %s.%s. The table is probably corrupted
Сообщение: The requested value %s for the master delay
exceeds the maximum %u
Сообщение: Only Format_description_log_event and row events are
allowed in BINLOG statements (but %s was provided)
Сообщение: Non matching attribute '%s' between partition and table
Сообщение: Table to exchange with partition is partitioned: '%s'
Сообщение: Table to exchange with partition is temporary: '%s'
Сообщение: Subpartitioned table, use subpartition instead of partition
Сообщение: Unknown partition '%s' in table '%s'
Сообщение: Tables have different definitions
Сообщение: Found a row that does not match the partition
Сообщение: Option binlog_cache_size (%lu) is greater than
max_binlog_cache_size (%lu); setting binlog_cache_size equal to
max_binlog_cache_size.
Сообщение: Cannot use %s access on index '%s' due to type or
collation conversion on field '%s'
Сообщение: Table to exchange with partition has foreign key references: '%s'
Сообщение: Data for column '%s' too long
Сообщение: Replication event checksum verification failed while
reading from network.
Сообщение: Option binlog_stmt_cache_size (%lu) is greater than
max_binlog_stmt_cache_size (%lu); setting binlog_stmt_cache_size
equal to max_binlog_stmt_cache_size.
Сообщение: Can't update table '%s' while '%s' is being created.
Сообщение: PARTITION () clause on non partitioned table
Сообщение: Found a row not matching the given partition set
Сообщение: Failure while changing the type of replication repository: %s.
Сообщение: The creation of some temporary tables could not be rolled back.
Сообщение: Some temporary tables were dropped, but these operations
could not be rolled back.
Сообщение: %s is not supported in multi-threaded slave mode. %s
Сообщение: The number of modified databases exceeds the maximum %d;
the database names will not be included in the
replication event metadata.
Сообщение: Cannot execute the current event group in the parallel
mode. Encountered event %s, relay-log name %s, position %s which
prevents execution of this event group in parallel mode. Reason: %s.
Сообщение: %s
Сообщение: FULLTEXT index is not supported for partitioned tables.
Сообщение: Invalid condition number
Сообщение: Sending passwords in plain text without SSL/TLS
is extremely insecure.
Сообщение: Storing MySQL user name or password information in the
master info repository is not secure and is therefore not
recommended. Please consider using the USER and PASSWORD
connection options for START SLAVE; see the 'START SLAVE Syntax'
in the MySQL Manual for more information.
Сообщение: Foreign key constraint for table '%s', record '%s' would
lead to a duplicate entry in table '%s', key '%s'
Сообщение: Foreign key constraint for table '%s', record '%s' would
lead to a duplicate entry in a child table
Сообщение: Setting authentication options is not possible when only
the Slave SQL Thread is being started.
Сообщение: The table does not have FULLTEXT index to support this query
Сообщение: The system variable %s cannot be set in stored
functions or triggers.
Сообщение: The system variable %s cannot be set when there is an
ongoing transaction.
Сообщение: The statement 'SET %s' cannot invoke a stored function.
Сообщение: The system variable @@SESSION.GTID_NEXT cannot be
'AUTOMATIC' when @@SESSION.GTID_NEXT_LIST is non-NULL.
Сообщение: Malformed GTID set specification '%s'.
Сообщение: Malformed GTID set encoding.
Сообщение: Malformed GTID specification '%s'.
Сообщение: Impossible to generate Global Transaction Identifier: the
integer component reached the maximal value. Restart the server
with a new server_uuid.
Сообщение: Parameters MASTER_LOG_FILE, MASTER_LOG_POS,
RELAY_LOG_FILE and RELAY_LOG_POS cannot be set when
MASTER_AUTO_POSITION is active.
Сообщение: CHANGE MASTER TO MASTER_AUTO_POSITION = 1 cannot be
executed because @@GLOBAL.GTID_MODE = OFF.
Сообщение: Cannot execute statements with implicit commit inside a
transaction when @@SESSION.GTID_NEXT == 'UUID:NUMBER'.
Сообщение: GTID_MODE = ON requires ENFORCE_GTID_CONSISTENCY = ON.
Сообщение: @@SESSION.GTID_NEXT cannot be set to UUID:NUMBER when
@@GLOBAL.GTID_MODE = OFF.
Сообщение: @@SESSION.GTID_NEXT cannot be set to ANONYMOUS when
@@GLOBAL.GTID_MODE = ON.
Сообщение: @@SESSION.GTID_NEXT_LIST cannot be set to a non-NULL
value when @@GLOBAL.GTID_MODE = OFF.
Сообщение: Statement violates GTID consistency: Updates to
non-transactional tables can only be done in either autocommitted
statements or single-statement transactions, and never in the same
statement as updates to transactional tables.
Сообщение: Statement violates GTID consistency: CREATE TABLE ... SELECT.
Сообщение: Statement violates GTID consistency: CREATE TEMPORARY
TABLE and DROP TEMPORARY TABLE can only be executed outside
transactional context. These statements are also not allowed in a
function or trigger because functions and triggers are also
considered to be multi-statement transactions.
Сообщение: The value of @@GLOBAL.GTID_MODE can only be changed one
step at a time: OFF <-> OFF_PERMISSIVE <->
ON_PERMISSIVE <-> ON. Also note that this value must be
stepped up or down simultaneously on all servers.
See the Manual for instructions.
Сообщение: The slave is connecting using CHANGE MASTER TO
MASTER_AUTO_POSITION = 1, but the master has purged binary logs
containing GTIDs that the slave requires.
Сообщение: @@SESSION.GTID_NEXT cannot be changed by a client that
owns a GTID. The client owns %s. Ownership is released on
COMMIT or ROLLBACK.
Сообщение: Unknown EXPLAIN format name: '%s'
Сообщение: Cannot execute statement in a READ ONLY transaction.
Сообщение: Comment for table partition '%s' is too long (max = %lu)
Сообщение: Slave is not configured or failed to initialize properly.
You must at least set --server-id to enable either a master or a
slave. Additional error messages can be found in the MySQL error log.
Сообщение: InnoDB presently supports one FULLTEXT index creation at a time
Сообщение: Cannot create FULLTEXT index on temporary InnoDB table
Сообщение: Column '%s' is of wrong type for an InnoDB FULLTEXT index
Сообщение: Index '%s' is of wrong type for an InnoDB FULLTEXT index
Сообщение: Creating index '%s' required more than
'innodb_online_alter_log_max_size' bytes of modification log.
Please try again.
Сообщение: Unknown ALGORITHM '%s'
Сообщение: Unknown LOCK type '%s'
Сообщение: CHANGE MASTER cannot be executed when the slave was
stopped with an error or killed in MTS mode. Consider using RESET
SLAVE or START SLAVE UNTIL.
Сообщение: Cannot recover after SLAVE errored out in parallel
execution mode. Additional error messages can be found in the
MySQL error log.
Сообщение: Cannot clean up worker info tables. Additional error
messages can be found in the MySQL error log.
Сообщение: Column count of %s.%s is wrong. Expected %d, found %d.
The table is probably corrupted
Сообщение: Slave must silently retry current transaction
Сообщение: There is a foreign key check running on table '%s'.
Cannot discard the table.
Сообщение: Schema mismatch (%s)
Сообщение: Table '%s' in system tablespace
Сообщение: IO Read error: (%lu, %s) %s
Сообщение: IO Write error: (%lu, %s) %s
Сообщение: Tablespace is missing for table %s.
Сообщение: Tablespace '%s' exists.
Сообщение: Tablespace has been discarded for table '%s'
Сообщение: Internal error: %s
Сообщение: ALTER TABLE %s IMPORT TABLESPACE failed with error %lu : '%s'
Сообщение: Index corrupt: %s
Сообщение: Supports only YEAR or YEAR(4) column.
Сообщение: Your password does not satisfy the current policy requirements
Сообщение: You must reset your password using ALTER USER statement
before executing this statement.
Сообщение: Failed to add the foreign key constaint. Missing index
for constraint '%s' in the foreign table '%s'
Сообщение: Failed to add the foreign key constaint. Missing index
for constraint '%s' in the referenced table '%s'
Сообщение: Failed to add the foreign key constraint '%s' to system tables
Сообщение: Failed to open the referenced table '%s'
Сообщение: Failed to add the foreign key constraint on table '%s'.
Incorrect options in FOREIGN KEY constraint '%s'
Сообщение: Duplicate foreign key constraint name '%s'
Сообщение: The password hash doesn't have the expected format. Check
if the correct password algorithm is being used with the
PASSWORD() function.
Сообщение: Cannot drop column '%s': needed in a foreign key constraint '%s'
Сообщение: Cannot drop column '%s': needed in a foreign key
constraint '%s' of table '%s'
Сообщение: Column '%s' cannot be NOT NULL: needed in a foreign key
constraint '%s' SET NULL
Сообщение: Duplicate index '%s' defined on the table '%s.%s'. This
is deprecated and will be disallowed in a future release.
Сообщение: Cannot change column '%s': used in a foreign key constraint '%s'
Сообщение: Cannot change column '%s': used in a foreign key
constraint '%s' of table '%s'
Сообщение: Malformed communication packet.
Сообщение: Running in read-only mode
Сообщение: When @@SESSION.GTID_NEXT is set to a GTID, you must
explicitly set it to a different value after a COMMIT or ROLLBACK.
Please check GTID_NEXT variable manual page for detailed
explanation. Current @@SESSION.GTID_NEXT is '%s'.
Сообщение: The system variable %s cannot be set in stored procedures.
Сообщение: @@GLOBAL.GTID_PURGED can only be set when
@@GLOBAL.GTID_EXECUTED is empty.
Сообщение: @@GLOBAL.GTID_PURGED can only be set when there are no
ongoing transactions (not even in other clients).
Сообщение: @@GLOBAL.GTID_PURGED was changed from '%s' to '%s'.
Сообщение: @@GLOBAL.GTID_EXECUTED was changed from '%s' to '%s'.
Сообщение: Cannot execute statement: impossible to write to binary
log since BINLOG_FORMAT = STATEMENT, and both replicated and non
replicated tables are written to.
Сообщение: %s is not supported for this operation. Try %s.
Сообщение: %s is not supported. Reason: %s. Try %s.
Сообщение: COPY algorithm requires a lock
Сообщение: Partition specific operations do not yet support LOCK/ALGORITHM
Сообщение: Columns participating in a foreign key are renamed
Сообщение: Cannot change column type INPLACE
Сообщение: Adding foreign keys needs foreign_key_checks=OFF
Сообщение: Dropping a primary key is not allowed without also adding
a new primary key
Сообщение: Adding an auto-increment column requires a lock
Сообщение: Cannot replace hidden FTS_DOC_ID with a user-visible one
Сообщение: Cannot drop or rename FTS_DOC_ID
Сообщение: Fulltext index creation requires a lock
Сообщение: sql_slave_skip_counter can not be set when the server is
running with @@GLOBAL.GTID_MODE = ON. Instead, for each
transaction that you want to skip, generate an empty transaction
with the same GTID as the transaction
Сообщение: Duplicate entry for key '%s'
Сообщение: Long database name and identifier for object resulted in
path length exceeding %d characters. Path: '%s'.
Сообщение: cannot silently convert NULL values, as required in this SQL_MODE
Сообщение: Your password has expired. To log in you must change it
using a client that supports expired passwords.
Сообщение: Found a row in wrong partition %s
Сообщение: Cannot schedule event %s, relay-log name %s, position %s
to Worker thread because its size %lu exceeds %lu of
slave_pending_jobs_size_max.
Сообщение: The binary log file '%s' is logically corrupted: %s
Сообщение: file %s was not purged because it was being read by %d
thread(s), purged only %d out of %d files.
Сообщение: file %s was not purged because it is the active log file.
Сообщение: Auto-increment value in UPDATE conflicts with internally
generated values
Сообщение: Row events are not logged for %s statements that modify
BLACKHOLE tables in row format. Table(s): '%s'
Сообщение: Slave failed to initialize master info structure
from the repository
Сообщение: Slave failed to initialize relay log info structure from
the repository
Сообщение: Access denied trying to change to user '%s'@'%s' (using
password: %s). Disconnecting.
Сообщение: InnoDB is in read only mode.
Сообщение: STOP SLAVE command execution is incomplete: Slave SQL
thread got the stop signal, thread is busy, SQL thread will stop
once the current task is complete.
Сообщение: STOP SLAVE command execution is incomplete: Slave IO
thread got the stop signal, thread is busy, IO thread will stop
once the current task is complete.
Сообщение: Operation cannot be performed. The table '%s.%s' is
missing, corrupt or contains bad data.
Сообщение: Temporary file write failure.
Сообщение: Upgrade index name failed, please use create index(alter
table) algorithm copy to rebuild index.
Сообщение: TIME/TIMESTAMP/DATETIME columns of old format have been
upgraded to the new format.
Сообщение: Operation not allowed when innodb_forced_recovery > 0.
Сообщение: The initialization vector supplied to %s is too short.
Must be at least %d bytes long
Сообщение: Plugin '%s' cannot be uninstalled now. %s
Сообщение: Cannot execute statement because it needs to be written
to the binary log as multiple statements, and this is not allowed
when @@SESSION.GTID_NEXT == 'UUID:NUMBER'.
Сообщение: Slave has more GTIDs than the master has, using the
master's SERVER_UUID. This may indicate that the end of the binary
log was truncated or that the last binary log file was lost, e.g.,
after a power or disk failure when sync_binlog != 1. The master
may or may not have rolled back transactions that were already
replicated to the slave. Suggest to replicate any transactions
that master has rolled back from slave to master, and/or commit
empty transactions on master to account for transactions that have
been committed on master but are not included in GTID_EXECUTED.
Сообщение: File %s is corrupted
Сообщение: Query partially completed on the master (error on master:
%d) and was aborted. There is a chance that your master is
inconsistent at this point. If you are sure that your master is
ok, run this query manually on the slave and then restart the
slave with SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1; START SLAVE;. Query:'%s'
Сообщение: Query caused different errors on master and slave. Error
on master: message (format)='%s' error code=%d; Error on
slave:actual message='%s', error code=%d. Default database:'%s'. Query:'%s'
Сообщение: Storage engine for table '%s'.'%s' is not loaded.
Сообщение: GET STACKED DIAGNOSTICS when handler not active
Сообщение: %s is no longer supported. The statement was converted to %s.
Сообщение: Statement is unsafe because it uses a fulltext parser
plugin which may not return the same value on the slave.
Сообщение: Cannot DISCARD/IMPORT tablespace associated with temporary table
Сообщение: Foreign key cascade delete/update exceeds max depth of %d.
Сообщение: Column count of %s.%s is wrong. Expected %d, found %d.
Created with MySQL %d, now running %d. Please use mysql_upgrade to
fix this error.
Сообщение: Trigger %s.%s.%s does not have CREATED attribute.
Сообщение: Referenced trigger '%s' for the given action time and
event type does not exist.
Сообщение: EXPLAIN FOR CONNECTION command is supported only for
SELECT/UPDATE/INSERT/DELETE/REPLACE
Сообщение: Invalid size for column '%s'.
Сообщение: Table storage engine '%s' found required create option missing
Сообщение: Out of memory in storage engine '%s'.
Сообщение: The password for anonymous user cannot be expired.
Сообщение: This operation cannot be performed with a running slave
sql thread; run STOP SLAVE SQL_THREAD first
Сообщение: Cannot create FULLTEXT index on materialized subquery
Сообщение: Undo Log error: %s
Сообщение: Invalid argument for logarithm
Сообщение: This operation cannot be performed with a running slave
io thread; run STOP SLAVE IO_THREAD FOR CHANNEL '%s' first.
Сообщение: This operation may not be safe when the slave has
temporary tables. The tables will be kept open until the server
restarts or until the tables are deleted by any replicated DROP
statement. Suggest to wait until slave_open_temp_tables = 0.
Сообщение: CHANGE MASTER TO with a MASTER_LOG_FILE clause but no
MASTER_LOG_POS clause may not be safe. The old position value may
not be valid for the new binary log file.
Сообщение: Query execution was interrupted, maximum statement
execution time exceeded
Сообщение: Select is not a read only statement, disabling timer
Сообщение: Duplicate entry '%s'.
Сообщение: Expression #%u of ORDER BY contains aggregate function
and applies to a UNION
Сообщение: Expression #%u of ORDER BY contains aggregate function
and applies to the result of a non-aggregated query
Сообщение: Slave worker has stopped after at least one previous
worker encountered an error when slave-preserve-commit-order was
enabled. To preserve commit order, the last transaction executed
by this thread has not been committed. When restarting the slave
after fixing any failed threads, you should fix this worker as well.
Сообщение: slave_preserve_commit_order is not supported %s.
Сообщение: The server is currently in offline mode
Сообщение: Binary geometry function %s given two geometries of
different srids: %u and %u, which should have been identical.
Geometry values passed as arguments to spatial functions must have
the same SRID value.
Сообщение: Calling geometry function %s with unsupported types of arguments.
A spatial function was called with a combination of argument types
that the function does not support.
Сообщение: Unknown GIS error occured in function %s.
Сообщение: Unknown exception caught in GIS function %s.
Сообщение: Invalid GIS data provided to function %s.
A spatial function was called with an argument not recognized as a
valid geometry value.
Сообщение: The geometry has no data in function %s.
Сообщение: Unable to calculate centroid because geometry is empty in
function %s.
Сообщение: Geometry overlay calculation error: geometry data is
invalid in function %s.
Сообщение: Geometry turn info calculation error: geometry data is
invalid in function %s.
Сообщение: Analysis procedures of intersection points interrupted
unexpectedly in function %s.
Сообщение: Unknown exception thrown in function %s.
Сообщение: Memory allocation error: %s in function %s.
Сообщение: Domain error: %s in function %s.
Сообщение: Length error: %s in function %s.
Сообщение: Invalid argument error: %s in function %s.
Сообщение: Out of range error: %s in function %s.
Сообщение: Overflow error error: %s in function %s.
Сообщение: Range error: %s in function %s.
Сообщение: Underflow error: %s in function %s.
Сообщение: Logic error: %s in function %s.
Сообщение: Runtime error: %s in function %s.
Сообщение: Unknown exception: %s in function %s.
Сообщение: Geometry byte string must be little endian.
Сообщение: The password provided for the replication user exceeds
the maximum length of 32 characters
Сообщение: Incorrect user-level lock name '%s'.
Сообщение: Deadlock found when trying to get user-level lock; try
rolling back transaction/releasing locks and
restarting lock acquisition.
This error is returned when the metdata locking subsystem detects
a deadlock for an attempt to acquire a named lock with
Сообщение: REPLACE cannot be executed as it requires deleting rows
that are not in the view
Сообщение: Do not support online operation on table with GIS index
Сообщение: User variable name '%s' is illegal
Сообщение: Cannot %s when GTID_MODE = OFF.
Сообщение: Incorrect type for argument %s in function %s.
Сообщение: Expression #%u of ORDER BY clause is not in SELECT list,
references column '%s' which is not in SELECT list; this
is incompatible with %s
Сообщение: Expression #%u of ORDER BY clause is not in SELECT list,
contains aggregate function; this is incompatible with %s
Сообщение: Supplied filter list contains a value which is not in the
required format 'db_pattern.table_pattern'
Сообщение: OK packet too large
Сообщение: Invalid JSON data provided to function %s: %s
Сообщение: Invalid GeoJSON data provided to function %s: Missing
required member '%s'
Сообщение: Invalid GeoJSON data provided to function %s: Member '%s'
must be of type '%s'
Сообщение: Invalid GeoJSON data provided to function %s
Сообщение: Unsupported number of coordinate dimensions in function
%s: Found %u, expected %u
Сообщение: Slave channel '%s' does not exist.
Сообщение: Couldn't create channel: Channel name is either invalid
or too long.
Сообщение: To have multiple channels, repository cannot be of type
FILE; Please check the repository configuration and convert
them to TABLE.
Сообщение: Multiple channels exist on the slave. Please provide
channel name as an argument.
Сообщение: Maximum number of replication channels allowed exceeded.
Сообщение: This operation cannot be performed with running
replication threads; run STOP SLAVE FOR CHANNEL '%s' first
Сообщение: This operation requires running replication threads;
configure slave and run START SLAVE FOR CHANNEL '%s'
Сообщение: Replication thread(s) for channel '%s' are already
runnning.
Сообщение: Replication thread(s) for channel '%s' are already
stopped.
Сообщение: This operation cannot be performed with a running slave
sql thread; run STOP SLAVE SQL_THREAD FOR CHANNEL '%s' first.
Сообщение: When sql_slave_skip_counter > 0, it is not allowed to
start more than one SQL thread by using 'START SLAVE
[SQL_THREAD]'. Value of sql_slave_skip_counter can only be used by
one SQL thread at a time. Please use 'START SLAVE [SQL_THREAD] FOR
CHANNEL' to start the SQL thread which will use the value of
sql_slave_skip_counter.
Сообщение: Expression #%u of %s is not in GROUP BY clause and
contains nonaggregated column '%s' which is not functionally
dependent on columns in GROUP BY clause; this is incompatible with
sql_mode=only_full_group_by
Сообщение: In aggregated query without GROUP BY, expression #%u of
%s contains nonaggregated column '%s'; this is incompatible with
sql_mode=only_full_group_by
Сообщение: Updating '%s' is deprecated. It will be made read-only
in a future release.
Сообщение: Changing sql mode '%s' is deprecated. It will be removed
in a future release.
Сообщение: DROP DATABASE failed; some tables may have been dropped
but the database directory remains. The GTID has not been added to
GTID_EXECUTED and the statement was not written to the binary log.
Fix this as follows: (1) remove all files from the database
directory %s; (2) SET GTID_NEXT='%s'; (3) DROP DATABASE `%s`.
Сообщение: The server is not configured properly to be an active
member of the group. Please see more details on error log.
This error is reserved for future use.
Сообщение: The START GROUP_REPLICATION command failed since the
group is already running.
This error is reserved for future use.
Сообщение: The START GROUP_REPLICATION command failed as the applier
module failed to start.
This error is reserved for future use.
Сообщение: The STOP GROUP_REPLICATION command execution is
incomplete: The applier thread got the stop signal while it was
busy. The applier thread will stop once the current task is
complete.
This error is reserved for future use.
Сообщение: The START GROUP_REPLICATION command failed as there was
an error when initializing the group communication layer.
This error is reserved for future use.
Сообщение: The START GROUP_REPLICATION command failed as there was
an error when joining the communication group.
This error is reserved for future use.
Сообщение: The table does not comply with the requirements by an
external plugin.
This error is reserved for future use.
Сообщение: Cannot change the value of variable %s without binary log
format as ROW.
This error is reserved for future use.
Сообщение: Error on observer while running replication hook '%s'.
This error is reserved for future use.
Сообщение: Plugin instructed the server to rollback the current transaction.
This error is reserved for future use.
Сообщение: Expression of generated column '%s' contains a disallowed function.
Сообщение: INPLACE ADD or DROP of virtual columns cannot be combined
with other ALTER TABLE actions
Сообщение: Cannot define foreign key with %s clause on a generated column.
Сообщение: The value specified for generated column '%s' in table
'%s' is not allowed.
Сообщение: '%s' is not supported for generated columns.
Сообщение: Generated column can refer only to generated columns
defined prior to it. Измените табличное определение, чтобы определить каждый произведенный
столбец позже чем любые произведенные столбцы, к которым это обращается. Сообщение: Column '%s' has a generated column dependency. Вы не можете удалить или переименовать произведенный столбец, если другой
столбец обращается к нему. Вы должны или удалить те столбцы также, или
пересмотреть их, чтобы не обращались к произведенному столбцу. Сообщение: Generated column '%s' cannot refer to auto-increment column.
Сообщение: The '%s' feature is not available; you need to remove
'%s' or use MySQL built with '%s'
Сообщение: SET @@GLOBAL.GTID_MODE = %s is not allowed because %s.
Сообщение: The replication receiver thread%s cannot start in
AUTO_POSITION mode: this server uses @@GLOBAL.GTID_MODE = OFF.
Сообщение: Cannot replicate anonymous transaction when AUTO_POSITION
= 1, at file %s, position %lld.
Сообщение: Cannot replicate anonymous transaction when
@@GLOBAL.GTID_MODE = ON, at file %s, position %lld.
Сообщение: Cannot replicate GTID-transaction when @@GLOBAL.GTID_MODE
= OFF, at file %s, position %lld.
Сообщение: Cannot set ENFORCE_GTID_CONSISTENCY = ON because there
are ongoing transactions that violate GTID consistency.
Сообщение: There are ongoing transactions that violate GTID consistency.
Сообщение: Access denied for user '%s'@'%s'. Account is locked. Учетная запись была заблокирована Сообщение: Incorrect tablespace name `%s`
Сообщение: Tablespace `%s` is not empty.
Сообщение: Incorrect File Name '%s'.
Сообщение: Inconsistent intersection points.
Сообщение: Optimizer hint syntax error
Сообщение: Unsupported MAX_EXECUTION_TIME
Сообщение: MAX_EXECUTION_TIME hint is supported by top-level
standalone SELECT statements only Подсказка оптимизатора Сообщение: Hint %s is ignored as conflicting/duplicated
Сообщение: Query block name %s is not found for %s hint
Сообщение: Unresolved name %s for %s hint
Сообщение: Please do not modify the %s table. This is a mysql
internal system table to store GTIDs for committed transactions.
Modifying it can lead to an inconsistent GTID state.
Сообщение: Command not supported by pluggable protocols
Сообщение: Incorrect locking service lock name '%s'. Имя службы блокировки было определено как Сообщение: Deadlock found when trying to get locking service lock;
try releasing locks and restarting lock acquisition.
Сообщение: Service lock wait timeout exceeded.
Сообщение: Parameter %s exceeds the maximum number of points in a
geometry (%lu) in function %s.
Сообщение: 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and
'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict
mode. They will be merged with strict mode in a future release.
Сообщение: Version token mismatch for %.*s. Correct value %.*s Клиент установил системную переменную
Сообщение: Version token %.*s not found. Клиент установил системную переменную
Сообщение: Variable %s cannot be changed by a client that owns a
GTID. The client owns %s. Ownership is released on
COMMIT or ROLLBACK.
Сообщение: %s cannot be performed on channel '%s'.
Сообщение: Invalid JSON text: "%s" at position %u in value for column '%s'.
Сообщение: Invalid JSON text in argument %u to
function %s: "%s" at position %u.%s
Сообщение: The JSON binary value contains invalid data.
Сообщение: Invalid JSON path expression. The error is around
character position %u.%s
Сообщение: Cannot create a JSON value from a string with CHARACTER
SET '%s'.
Сообщение: Invalid JSON character data provided to function %s:
'%s'; utf8 is required.
Сообщение: Invalid data type for JSON data in argument %u to
function %s; a JSON string or JSON type is required.
Сообщение: Cannot CAST value to JSON.
Сообщение: A path expression must be encoded in the utf8 character
set. The path expression '%s' is encoded in character set '%s'.
Сообщение: In this situation, path expressions may not contain the *
and ** tokens.
Сообщение: The JSON value is too big to be stored in a JSON column.
Сообщение: The JSON object contains a key name that is too long.
Сообщение: JSON column '%s' cannot be used in key specification.
Сообщение: The path expression '$' is not allowed in this context.
Сообщение: The oneOrAll argument to %s may take these values: 'one' or 'all'.
Сообщение: Out of range JSON value for CAST to %s%s from column %s
at row %ld
Сообщение: Invalid JSON value for CAST to %s%s from column %s at row %ld
Сообщение: The JSON document exceeds the maximum depth.
Сообщение: JSON documents may not contain NULL member names.
Сообщение: Connections using insecure transport are prohibited while
--require_secure_transport=ON. С системной переменной
Сообщение: No secure transports (SSL or Shared Memory) are
configured, unable to set --require_secure_transport=ON. Системная переменная
Сообщение: Storage engine %s is disabled (Table creation is disallowed).
Была предпринята попытка составить таблицу или табличное пространство,
используя механизм хранения, перечисленный в значении системной переменной
Сообщение: User %s does not exist. Сообщение: User %s already exists. Сообщение: Aborted by Audit API ('%s';%d). Эта ошибка указывает, что плагин аудита прервал обработку события.
Сообщение, как правило, указывает на имя подкласса событий и
числовое значение состояния. Сообщение: A path expression is not a path to a cell in an array. Сообщение: Another buffer pool resize is already in progress. Сообщение: The '%s' feature is disabled; see the documentation for '%s'
Сообщение: Server isn't available
Сообщение: Session was killed
Сообщение: Memory capacity of %llu bytes for '%s' exceeded. %s
Сообщение: Range optimization was not done for this query.
Сообщение: The client holds ownership of the GTID %s. Therefore,
WAIT_FOR_EXECUTED_GTID_SET cannot wait for this GTID. Сообщение: Cannot add foreign key on the base column of
indexed virtual column. Сообщение: Cannot create index on virtual column whose base column
has foreign constraint. Сообщение: Please do not modify the %s table with an XA transaction.
This is an internal system table used to store GTIDs for committed
transactions. Although modifying it can lead to an inconsistent
GTID state, if neccessary you can modify it with a non-XA transaction.
Сообщение: Lock acquisition refused by storage engine.
Сообщение: ADD COLUMN col...VIRTUAL, ADD INDEX(col)
Сообщение: Master key rotation is not supported by storage engine.
Сообщение: Write to binlog failed. However, master key rotation has
been completed successfully.
Сообщение: Storage engine is not available.
Сообщение: This tablespace can't be encrypted.
Сообщение: Invalid encryption option.
Сообщение: Can't find master key from keyring, please check keyring
plugin is loaded.
Сообщение: Parser bailed out for this query.
Сообщение: Cannot alter encryption attribute by inplace algorithm.
Сообщение: Function '%s' failed because underlying keyring service
returned an error. Please check if a keyring plugin is installed
and that provided arguments are valid for the keyring you are using.
Сообщение: It seems that your db schema is old. The %s column is 77
characters long and should be 93 characters long. Please run
mysql_upgrade.
Сообщение: RESET MASTER is not allowed because %s.
Сообщение: The START GROUP_REPLICATION command failed since the
group already has 9 members.
Сообщение: Cannot add foreign key on the base column of stored column.
Сообщение: Cannot complete the operation because table is referenced
by another connection.
Сообщение: CREATE TEMPORARY TABLE is not allowed with
ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
Сообщение: The ACL operation failed due to the following error from
SE: errcode %d - %s
Сообщение: This storage engine does not support the %s index
algorithm, storage engine default was used instead.
Сообщение: Database '%s' doesn't exist
Сообщение: Too many enumeration values for column %s.
Сообщение: Too long enumeration/set value for column %s.
Сообщение: %s dictionary object is invalid. (%s)
Сообщение: Failed to update %s dictionary object.
Сообщение: Dictionary object id (%lu) does not exist.
Сообщение: Dictionary object name '%s' is invalid. (%s)
Сообщение: Tablespace %s doesn't exist.
Сообщение: Comment for routine '%s' is too long (max = %lu)
Сообщение: Failed to load routine '%s'.
Сообщение: Binary operands of bitwise operators must be of equal length
Сообщение: Aggregate bitwise functions cannot accept arguments
longer than 511 bytes; consider using the SUBSTRING() function
Сообщение: Hints aren't supported in %s
Сообщение: %s value is a geometry of unexpected type %s in %s.
Сообщение: Can't parse the spatial reference system definition of SRID %u.
Сообщение: The spatial reference system definition for SRID %u does
not specify the mandatory %s (EPSG %u) projection parameter.
Сообщение: There's no spatial reference system with SRID %u.
Calculations in function %s will be done in SRID 0.
Сообщение: Function %s is only defined for Cartesian spatial
reference systems, but one of its arguments is in SRID %u, which
is not Cartesian.
Сообщение: Function %s is only defined for Cartesian spatial
reference systems, but one of its arguments is in SRID %u, which
has not been defined.
Сообщение: A primary key index cannot be invisible
Сообщение: Unknown authorization ID `%s`@`%s`
Сообщение: Failed to grant %s` to %s
Сообщение: Failed to open the security system tables
Сообщение: Failed to set default roles
Сообщение: Cannot find schema in specified URN: '%s'.
Сообщение: Cannot acquire scheme load service implementation for
schema '%s' in specified URN: '%s'.
Сообщение: Cannot load component from specified URN: '%s'.
Сообщение: `%s`@`%s` is not granted to `%s`@`%s`
Сообщение: Could not revoke role from `%s`@`%s`
Сообщение: Renaming of a role identifier is forbidden
Сообщение: Cannot acquire specified service implementation: '%s'.
Сообщение: Cannot satisfy dependency for service '%s'
required by component '%s'.
Сообщение: Cannot register service implementation '%s'
provided by component '%s'.
Сообщение: Initialization method provided by component '%s' failed.
Сообщение: Component specified by URN '%s' to unload has not
been loaded before.
Сообщение: De-initialization method provided by component '%s' failed.
Сообщение: Release of previously acquired service implementation
failed.
Сообщение: Unregistration of service implementation '%s' provided by
component '%s' failed during unloading of the component.
Сообщение: Cannot unload component from specified URN: '%s'.
Сообщение: The Persistent Dynamic Loader was used to unload a
component '%s', but it was not used to load that component before.
Сообщение: The mysql.component table is missing or has an incorrect definition.
Сообщение: Failed to manipulate component '%s' persistence data.
Error code %d from storage engine.
Сообщение: The component with specified URN: '%s' was specified in
group more than once.
Сообщение: @@GLOBAL.GTID_PURGED cannot be changed: %s
Сообщение: Can not lock user management caches for processing.
Сообщение: There's no spatial reference system with SRID %u.
Сообщение: Variables cannot be persisted. Please retry.
Сообщение: Information schema queries do not support the '%s' clause.
Сообщение: Unable to store dynamic %s statistics into data dictionary.
Сообщение: Access to system schema '%s' is rejected.
Сообщение: Access to system tablespace '%s' is rejected.
Сообщение: Access to %s '%s.%s' is rejected. Сообщение: data dictionary table
Сообщение: system table
Сообщение: table Информация об ошибке клиента прибывает из следующих исходных файлов: Значения ошибок и символы в круглых скобках соответствуют
определениям в файле Поскольку обновления бывают часто, возможно, что те файлы будут
содержать дополнительную информацию об ошибках, не перечисленную здесь.
Ошибка:
Сообщение: Unknown MySQL error
Сообщение: Can't create UNIX socket (%d)
Сообщение: Can't connect to local MySQL server through socket '%s' (%d)
Сообщение: Can't connect to MySQL server on '%s' (%d)
Сообщение: Can't create TCP/IP socket (%d)
Сообщение: Unknown MySQL server host '%s' (%d)
Сообщение: MySQL server has gone away
Сообщение: Protocol mismatch; server version = %d, client version =
%d
Сообщение: MySQL client ran out of memory
Сообщение: Wrong host info
Сообщение: Localhost via UNIX socket
Сообщение: %s via TCP/IP
Сообщение: Error in server handshake
Сообщение: Lost connection to MySQL server during query
Сообщение: Commands out of sync; you can't run this command now
Сообщение: Named pipe: %s
Сообщение: Can't wait for named pipe to host: %s pipe: %s (%lu)
Сообщение: Can't open named pipe to host: %s pipe: %s (%lu)
Сообщение: Can't set state of named pipe to host: %s pipe: %s (%lu)
Сообщение: Can't initialize character set %s (path: %s)
Сообщение: Got packet bigger than 'max_allowed_packet' bytes
Сообщение: Embedded server
Сообщение: Error on SHOW SLAVE STATUS:
Сообщение: Error on SHOW SLAVE HOSTS:
Сообщение: Error connecting to slave:
Сообщение: Error connecting to master:
Сообщение: SSL connection error: %s
Сообщение: Malformed packet
Сообщение: This client library is licensed only for use with MySQL
servers having '%s' license
Сообщение: Invalid use of null pointer
Сообщение: Statement not prepared
Сообщение: No data supplied for parameters in prepared statement
Сообщение: Data truncated
Сообщение: No parameters exist in the statement
Сообщение: Invalid parameter number Номер столбца для
Имя ключа было пустое, или количество данных о признаке соединения для
Сообщение: Can't send long data for non-string/non-binary data types
(parameter: %d)
Сообщение: Using unsupported buffer type: %d (parameter: %d)
Сообщение: Shared memory: %s
Сообщение: Can't open shared memory; client could not
create request event (%lu)
Сообщение: Can't open shared memory; no answer event received from
server (%lu)
Сообщение: Can't open shared memory; server could not allocate file
mapping (%lu)
Сообщение: Can't open shared memory; server could not get pointer to
file mapping (%lu)
Сообщение: Can't open shared memory; client could not allocate file
mapping (%lu)
Сообщение: Can't open shared memory; client could not get pointer to
file mapping (%lu)
Сообщение: Can't open shared memory; client could not create %s
event (%lu)
Сообщение: Can't open shared memory; no answer from server (%lu)
Сообщение: Can't open shared memory; cannot send request event to
server (%lu)
Сообщение: Wrong or unknown protocol
Сообщение: Invalid connection handle
Сообщение: Connection using old (pre-4.1.1) authentication protocol
refused (client option 'secure_auth' enabled)
Сообщение: Row retrieval was canceled by mysql_stmt_close() call
Сообщение: Attempt to read column without prior row fetch
Сообщение: Prepared statement contains no metadata
Сообщение: Attempt to read a row while there is no result set
associated with the statement
Сообщение: This feature is not implemented yet
Сообщение: Lost connection to MySQL server at '%s', system error: %d
Сообщение: Statement closed indirectly because of a preceding %s() call
Сообщение: The number of columns in the result set differs from the
number of bound buffers. You must reset the statement, rebind the
result set columns, and execute the statement again
Сообщение: This handle is already connected. Use a separate handle
for each connection.
Сообщение: Authentication plugin '%s' cannot be loaded: %s Сообщение: There is an attribute with the same name already Дубликат имени атрибута соединения был определен для
Сообщение: Authentication plugin '%s' reported error: %s Сообщение: Insecure API function call: '%s' Use instead: '%s' Был обнаружен опасный вызов функции. Измените приложение, чтобы
использовать предложенную альтернативную функцию вместо этого.
Этот раздел перечисляет некоторые типичные проблемы и сообщения об
ошибках, с которыми Вы можете столкнуться. Это описывает, как определить
причины проблем и что сделать, чтобы решить их. Когда Вы сталкиваетесь с проблемой, первая вещь, которую Вы должны
сделать, состоит в том, чтобы узнать, какая программа или элемент
оборудования вызывают ее: Если у Вас есть один из следующих признаков, то это, вероятно,
аппаратные проблемы (такие как память, материнская плата, центральный
процессор или жесткий диск) или проблема с ядром: Клавиатура не работает. Это может обычно проверяться, нажимая
клавишу caps lock. Если индикатор Caps Lock не изменяется, Вы должны заменить
свою клавиатуру. Прежде, чем это делать, Вы должны попытаться перезапустить
свой компьютер и проверить все кабели к клавиатуре. В этом случае, Вы должны проверить все Ваши кабели и выполнить некоторые
диагностические инструменты, чтобы проверить Ваши аппаратные средства! Вы
должны также проверить, есть ли какие-либо обновления или пакеты обновлений
для Вашей операционной системы, которые могли бы, вероятно, решить Вашу
проблему. Проверьте также что все Ваши библиотеки (такие, как
Всегда хорошо использовать машину с памятью ECC, чтобы быстро
обнаружить проблемы с памятью. Если после того, как Вы исследовали все другие возможности и пришли к
заключению, что сервер или клиент MySQL вызывают проблему, пора создать отчет
об ошибках для списка рассылки или команды поддержки. В отчете об ошибках,
попытайтесь дать очень подробное описание того, как система ведет себя и что
Вы думаете, происходит. Вы должны также заявить, почему Вы думаете, что
именно MySQL вызывает проблему. Учтите все ситуации в этой главе. Опишите
любые проблемы точно, как они появляются, когда Вы исследуете свою систему.
Используйте копирование и вставку для любых выходных сигналов и сообщений об
ошибках из программ и файлов системного журнала. Попытайтесь описать подробно, какая программа не работает и все признаки,
которые Вы видите. Мы получили в прошлом много отчетов об ошибках, которые
заявляют только "ничего не работает". Это не предоставляет
информации о том, что могло быть проблемой. Если программа терпит неудачу, всегда полезно знать следующую информацию:
Имеется ли segmentation fault (дамп ядра)? Посылая отчет об ошибках, Вы должны следовать схеме, описанной в
разделе 1.7. Этот раздел перечисляет некоторые ошибки, с которыми пользователи часто
сталкиваются, выполняя программы MySQL. Хотя проблемы обнаруживаются, когда
Вы пытаетесь выполнить программы клиента, решения многих из проблем вовлекают
изменение конфигурации сервера MySQL. Ошибка Клиент MySQL на Unix может соединиться с сервером
mysqld
двумя различными способами: используя файл сокета Unix, чтобы соединиться
через файл в файловой системе (значение по умолчанию
Если сервер MySQL работает на Windows, Вы можете соединиться по TCP/IP.
Если сервер запущен с опцией
Ошибка (2002) Ошибка (2003) Начните с проверки того, есть ли процесс
mysqld,
работающий на Вашем хосте сервера. Используйте
ps xa | grep mysqld в Unix или Task
Manager в Windows. Если нет такого процесса, Вы должны запустить сервер. См.
раздел 2.9.2. Если процесс mysqld
работает, Вы можете проверить это, пробуя следующие команды.
Номер порта или имя файла сокета Unix могут отличаться в Вашей установке.
Удостоверьтесь, что сервер не был сконфигурирован так, чтобы игнорировать
сетевые соединения или (если Вы пытаетесь соединиться удаленно), что он не
был сконфигурирован, чтобы слушать только локально на его сетевых
интерфейсах. Если сервер был запущен с опцией
Проверьте, что нет никакого брандмауэра, блокирующего доступ к MySQL. Ваш
брандмауэр может быть сконфигурирован на основе выполняемого приложения или
номера порта, используемого MySQL для коммуникации (3306 по умолчанию). Под
Linux или Unix, проверьте свои настройки IPtables (или подобные), чтобы
гарантировать, что порт не был заблокирован. Под Windows приложения, такие
как ZoneAlarm или Брандмауэр Windows, возможно, должны быть сконфигурированы,
чтобы не блокировать порт MySQL. Вот некоторые причины ошибки mysqld
не работает на локальном хосте. Проверьте список процессов своей
операционной системы, чтобы гарантировать, что присутствует процесс
mysqld. Если Вы получаете сообщение об ошибке Проверьте, работает ли сервер на том хосте, выполняя
Когда Вы выполняете сервер MySQL на Windows со многими соединениями TCP/IP
с ним, и Ваши клиенты получают ошибку Безопасно уменьшить Windows разрешает эфемерные (недолгие) порты TCP пользователю. После того,
как любой порт закрыт, это останется в статусе Windows Server 2003 и ранее: порты в диапазоне 1025-5000. С маленьким стеком доступных портов TCP (5000) и высоким числом портов
TCP, открытых и закрытых за короткий период времени наряду со статусом
Сократите количество портов TCP, потребляемых быстро, используя
объединение соединений или постоянные соединения, где только возможно. Следующая процедура вовлекает изменение реестра Windows. Прежде, чем Вы
измените реестр удостоверьтесь, что зарезервировали его и понимаете, как
восстановить, если проблема происходит. Для информации о том, как сохранить,
восстановить и отредактировать реестр, смотрите следующую статью в
Microsoft Knowledge Base:
http://support.microsoft.com/kb/256986/EN-US/. Запустите Registry Editor
( Отмена вышеупомянутого должна быть столь же проста, как удаление записей
реестра, которые Вы создали. Есть три вероятных причины для этого сообщения об ошибке. Обычно это указывает на сетевую проблему связи, и Вы должны проверить
работу своей сети, если эта ошибка часто происходит. Если сообщение об ошибке
включает during query, это, вероятно, имеет место.
Иногда during query происходит, когда миллионы
строк посылают как часть одного или более запросов. Если Вы знаете, что это
происходит, Вы должны попытаться увеличить
Также это может произойти, когда клиент делает попытку начального
соединения с сервером. В этом случае, если Ваше значение
Если причина не одна из только что описанных, Вы можете испытывать
проблему со значениями Клиенты MySQL запрашивают пароль когда вызваны с опцией
Если следующая ошибка происходит, это означает, что
mysqld
получил много запросов соединения от данного хоста, которые
были прерваны в середине:
По умолчанию mysqld
блокирует хост после 100 ошибок соединения. Вы можете
скорректировать значение, устанавливая
Если Вы получаете ошибку Числом разрешенных соединений управляет системная переменная
mysqld
фактически разрешает Максимальное количество соединений зависит от качества библиотеки потоков
на данной платформе, количества доступной RAM, сколько RAM используется для
каждого соединения, рабочей нагрузки каждого соединения и желаемого времени
отклика. Linux или Solaris должны быть в состоянии поддержать по крайней мере
500-1000 одновременных соединений обычно и целых 10000 соединений, если Вы
имеете много гигабайтов RAM в наличии, а рабочая нагрузка каждого низка или
некритично время отклика. Windows ограничена (открытые таблицы*2+открытые
соединения) < 2048 из-за уровня совместимости Posix, используемого
на этой платформе. Увеличение
Если Вы запускаете запрос, используя клиент
mysql и получаете ошибку как приведена
ниже, это означает, что у mysql
нет достаточной памяти, чтобы сохранить
весь результат запроса:
Этот раздел также покрывает связанную ошибку Наиболее распространенная причина ошибки По умолчанию, сервер закрывает соединение после восьми часов, если ничто
не произошло. Вы можете изменить ограничение по времени, устанавливая
переменную Если у Вас есть скрипт, Вы только должны запустить запрос снова для
клиента, чтобы сделать автоматическое пересоединение. Это предполагает, что у
Вас есть автоматическое пересоединение во включенном режиме на клиенте (что
является значением по умолчанию для Некоторые другие общие причины Вы (или администратор) уничтожили рабочий поток с
помощью Проблема на Windows состоит в том, что в некоторых случаях MySQL не
получает ошибку от OS при записи в соединение TCP/IP с сервером, а вместо
этого получает ошибку, пытаясь считать ответ из соединения. Решение этого состоит в том, чтобы или сделать
Запросы Вы можете также видеть ошибку Другая сетевая проблема, которая может вызвать эту ошибку, происходит,
если порт MySQL (значение по умолчанию 3306) заблокирован Вашим брандмауэром,
таким образом предотвращая какие-либо соединения вообще с сервером MySQL.
Вы можете проверить, упал ли сервер MySQL и перезапустить его, выполняя
mysqladmin version
и исследуя продолжительность работы сервера. Если бы соединение
клиента было сломано, потому что
mysqld
перезапускался, то Вы должны сконцентрироваться на обнаружении причины
катастрофического отказа. Вы можете получить больше информации о потерянных соединениях, запуская
mysqld с
системной переменной Если Вы хотите создать отчет об ошибке относительно этой проблемы,
убедитесь, что Вы включаете следующую информацию: Укажите, упал ли сервер MySQL. Вы можете найти информацию об этом
в журнале ошибок сервера. См. раздел B.5.3.3
. См. также разделы
B.5.2.10 и 1.7. Коммуникационный пакет единственный запрос SQL, посланный серверу MySQL,
единственная строка, которую посылают клиенту, или событие двоичного журнала,
посланное с основного сервера репликации ведомому устройству. Самым большим пакетом, который может быть передан к или из MySQL 8.0
серверов или клиент, является 1GB. Когда клиент MySQL или сервер
mysqld
получают пакет, больше чем
У клиента и сервера есть их собственные переменные
Если Вы используете клиента
mysql, значение по умолчанию
Значение по умолчанию серверной копии
Вы можете также получить странные проблемы с большими пакетами, если Вы
используете большие значения Если проблемы соединения происходят, такие как коммуникационные ошибки или
прерванные соединения, используйте эти источники информации,
чтобы диагностировать проблемы: Журнал ошибок. См. раздел 6.4.2
. Если Вы запускаете сервер с системной переменной
Клиент пытается получить доступ к базе данных, но не имеет никаких
привилегий для этого. Если эти проблемы происходят, это может указывать, что кто-то пытается
ворваться в Ваш сервер! Если общий журнал запроса включен, сообщения для этих
типов проблем зарегистрированы в нем. Если клиент успешно соединяется, но позже разъединяется ненадлежащим
образом, сервер постепенно увеличивает
Программа клиента не вызвала
Другие причины проблем с прерванными соединениями или клиентами: Значение переменной
См. также раздел B.5.2.8. Если происходит ошибка table-full, может случиться так, что диск полон или
что таблица достигла своего максимального размера. Эффективный максимальный
табличный размер для баз данных MySQL обычно определяется ограничениями
операционной системы на размеры файла, а не внутренними пределами MySQL. См.
раздел C.10.3. Если Вы получаете ошибку следующего типа для некоторых запросов, это
означает, что MySQL не может создать временный файл для набора результатов
во временном каталоге:
Можно запустить mysqld
с опцией
Другая причина этой ошибки может быть проблемой разрешений.
Удостоверьтесь, что сервер MySQL может писать в каталог
Проверьте также код ошибки, который Вы получаете с
perror.
Одна из причина, по которой сервер не может записать таблицу, состоит в том,
что файловая система полна:
Если Вы получаете ошибку Это может произойти, например, если Вы используете
Если Вы получаете следующую ошибку, это означает, что, когда
mysqld
был запущен или когда он перезагружал таблицы привилегий, нашел учетную
запись в таблице В результате учетная запись просто проигнорирована системой. Чтобы решить
эту проблему, назначьте новый, допустимый, пароль на учетную запись. Если Вы получаете любую из следующих ошибок, это обычно означает, что
никакой таблицы не существует в базе данных по умолчанию:
Поскольку MySQL использует каталоги и файлы, чтобы сохранить базы
данных и таблицы, имена базы данных и имена таблиц являются чувствительными к
регистру, если они расположены в файловой системе, у которой есть
чувствительные к регистру имена файла. Вы можете проверить, какие таблицы находятся в базе данных по умолчанию
через Вы могли бы видеть такую ошибку, если у Вас есть
проблемы с набором символов:
Набор символов многобайтовый, и у Вас нет никакой поддержки набора
символов в клиенте. В этом случае Вы должны повторно собрать клиента,
выполняя CMake с опцией
Все стандартные исполняемые модули MySQL собраны с поддержкой
всех многобайтовых наборов символов. В этом случае Вы должны использовать один из следующих методов,
чтобы решить проблему: Повторно соберите клиент с поддержкой набора символов. См.
раздел 2.8.4. Если Вы получили Чтобы сказать mysqld
сохранять открытыми меньше файлов за один раз, Вы можете сделать
табличный кэш меньше, уменьшая значение системной переменной
Чтобы изменить число дескрипторов файла, доступных
mysqld,
Вы можете использовать опцию
Если Вы выполняете оболочку tcsh,
ulimit не работает! tcsh
также сообщает неправильные значения, когда Вы просите текущие
пределы. В этом случае Вы должны запустить
mysqld_safe
, используя sh. Если Вы запустили mysqld
с
Когда сервер обнаруживает табличное повреждение См. также разделы 6.1.4 и
26.5.1.7. Если у Вас есть проблемы с правами доступа, переменная окружения
Чтобы изменить значение по умолчанию По умолчанию, MySQL создает каталоги базы данных со значением разрешения
на доступ Если Вы никогда не назначали Если Вы знаете Если Вы назначали В Windows используйте следующую процедуру, чтобы сбросить пароль для
пользователя MySQL Войдите в систему как Администратор. Если Ваш сервер не работает как служба, Вы, возможно, должны использовать
Диспетчер задач, чтобы вынудить его остановиться. Сервер выполняет содержание файла, названного в опции
the Чтобы вывести ответ сервер в консоль, а не в файл системного журнала,
добавьте опцию Если Вы устанавливали MySQL, используя мастер установки MySQL, Вы,
возможно, должны определить опцию
Вы должны теперь быть в состоянии соединиться с сервером MySQL как
В Unix используйте следующую процедуру, чтобы сбросить пароль для
пользователя MySQL Инструкции предполагают, что Вы запустите сервер MySQL с учетной записи
Unix, которую Вы обычно используете для того, чтобы выполнить его. Например,
если Вы выполняете сервер, используя учетку Войдите в систему как пользователь Unix, от имени
которого сервер MySQL выполняется (например, Остановите сервер MySQL, посылая нормальный Предыдущие разделы обеспечивают инструкции определенно для Windows и
Unix-систем. Альтернативно, на любой платформе, Вы можете сбросить пароль,
используя mysql
(но этот подход менее безопасен): Остановите сервер MySQL в случае необходимости, затем
перезапустите его с опцией
Теперь остановите сервер и запустите его нормально (без опций
Каждая версия MySQL проверена на многих платформах прежде, чем она будет
выпущена. Это не означает, что нет никаких ошибок в MySQL, но если есть
ошибки, их должно быть очень мало. Сначала Вы должны попытаться узнать, является ли проблема падений
mysqld
проблемой на сервере или на клиенте. Вы можете проверить, сколько времени Ваш
сервер mysqld
работал, выполняя запрос
mysqladmin version. Если
mysqld
перезапустился, Вы можете найти причину в журнале ошибок сервера. См.
раздел 6.4.2. На некоторых системах Вы можете найти в журнале ошибок след стека при
падении mysqld
, который Вы можете обработать программой Много катастрофических отказов сервера вызваны поврежденными файлами с
данными или индексными файлами. MySQL обновляет файлы на диске с помощью
системного вызова Предыдущие средства обеспечивают то, что обычно Вы не должны получить
поврежденные таблицы, если одно из следующего не происходит: Сервер MySQL или хост сервера были
повреждены в середине обновления. Поскольку очень трудно знать, почему что-то отказывает, сначала
попытайтесь проверить вещи, которые работают на катастрофический отказ для
Вас. Попробуйте следующие вещи: Остановите сервер
mysqld с помощью
mysqladmin shutdown, запустите
myisamchk --silent --force
*/*.MYI из каталога данных, чтобы проверить все таблицы
Запустите
mysqld из gdb
(или другого отладчика). См.
раздел 26.5. Попытайтесь моделировать свое приложение скриптом на Perl, чтобы
вынудить MySQL отказать или плохо себя вести. Текущий код динамических строк использовался в течение нескольких лет с
очень немногими проблемами, но строки динамической длины являются по своей
природе более склонными к ошибкам, таким образом, может быть хорошей идеей
попробовать эту стратегию, чтобы увидеть, помогает ли это. Этот раздел описывает, как MySQL отвечает на ошибки переполнения диска
(такие, как no space left on device) и ошибки
исчерпания квоты (такие, как write failed или
user block limit reached). Этот раздел важен для записи в таблицы Когда происходит переполнение диска, MySQL делает следующее: Он проверяет раз в минуту, чтобы увидеть, есть ли достаточно
пространства, чтобы записать текущую строку. Если есть достаточно
пространства, работа продолжается, как будто ничего не произошло. Чтобы облегчить проблему, предпримите следующие меры: Чтобы продолжить работу, Вы должны только освободить достаточно
дискового пространства, чтобы вставить все записи. Исключения к предыдущему поведению: когда Вы используете
В Unix MySQL использует значение переменной окружения В Windows MySQL проверяет в порядке значения переменные окружения
Если файловая система, содержащая Ваш временный каталог, является слишком
маленькой, Вы можете использовать
mysqld с опцией
Опция Чтобы распределить нагрузку эффективно, эти пути должны быть расположены
на различных физических дисках, а не на разных разделах
того же самого диска. Если сервер MySQL действует как ведомое устройство репликации, Вы должны
убедиться, что установили
MySQL обеспечивает то, что временные файлы удалены, если
mysqld
прерван. На платформах, которые поддерживают это (такие, как Unix), это
сделано, отвязывая файл после открытия. Недостаток в том, что имя не
появляется в списках каталога, и Вы не видите большой временный файл, который
заполняет файловую систему, в которой расположен временный каталог. В таких
случаях lsof +L1 может быть полезным в
идентификации больших файлов, связанных с
mysqld. Сортируя ( Для некоторых В большинстве случаев Временные таблицы Если работа Если работа Опция В окружающей среде репликации стоит копировать только настройку
Местоположение по умолчанию для файла сокета Unix, который использует
сервера для коммуникации с местными клиентами
На некоторых версиях Unix любой может удалить файлы в каталоге
На большинстве версий Unix Вы можете защитить Ваш каталог
Другой подход должен изменить место, где сервер создает файл. Если Вы
делаете это, Вы должны также позволить программам клиента узнать новое
местоположение файла. Вы можете определить местоположение
файла несколькими способами: Определите путь в глобальном или местном файле опции. Например,
вставьте следующие строки в Вы можете проверить, работает ли новое местоположение, пытаясь соединиться
с сервером этой командой:
Если у Вас есть проблема с Вы можете установить часовой пояс для сервера с помощью опции
Допустимые значения для
Для небинарных строк ( Сравнение между небинарной и двоичной строками обработано как
сравнение двоичных строк. Простые операции сравнения ( Набор символов и сопоставление по умолчанию Чтобы заставить чувствительное к регистру сравнение недвоичных строк быть
нечувствительным к регистру, надо использовать Формат значений Когда Вы сравниваете Когда Вы сравниваете два столбца. Для этих исключений сравнение сделано, преобразовывая объекты в строки и
выполняя строковое сравнение. Для безопасности предположите, что строки сравнены как строки и используют
соответствующие строковые функции, если Вы хотите сравнить временное
значение со строкой. Специальная нулевая дата Поскольку MySQL выполняет только описанные преобразования, следующие
запросы работают (считается, что Если Вы включаете режим SQL
MySQL разрешает Вам хранить даты, где день или месяц и день ноль. Это
удобно, если Вы хотите сохранить дату рождения в столбец
MySQL разрешает Вам хранить значение ноля
( Сделать, чтобы MySQL проверил все даты и принял только легальные даты
(если не переопределено Понятие значения Для помощи с обработкой В SQL значение Вы можете добавить индекс на столбце, который может иметь значения
При чтении данных с помощью
Используя Используя Агрегатные функции ( Для некоторых типов данных, дескрипторов MySQL, значения Псевдоним может использоваться в запросе, чтобы дать столбцу другое имя.
Вы можете использовать псевдоним в В списке выбора запроса заключенный в кавычки псевдоним столбца может быть
определен, используя идентификатор или строковые символы заключения в кавычки:
Если Вы получаете следующее сообщение, пытаясь выполнить
Если Вы сознательно не смешивали транзакционные и нетранзакционные таблицы
в пределах транзакции, наиболее вероятная причина для этого сообщения состоит
в том, что таблица, которая, как Вы думали, была транзакционной, таковой на
деле не оказалась. Это может произойти, если Вы пытаетесь составить таблицу,
используя транзакционный механизм хранения, который не поддержан Вашим
сервером mysqld
(или это было отключено с опцией запуска). Если
mysqld
не поддерживает механизм хранения, он вместо этого составляет таблицу как
Вы можете проверить механизм хранения таблицы при использовании любого
из этих запросов:
Чтобы проверить, какие механизмы хранения Ваш
mysqld
поддерживает, используйте этот запрос:
Если полная длина запроса Если у Вас есть сложный запрос, который использует много таблиц, но не
возвращает строк, Вы должны использовать следующую процедуру, чтобы узнать,
что не так: Проверьте запрос с Проверьте, что испытательный файл демонстрирует проблему,
выполняя эти команды:
Числа с плавающей запятой иногда вызывают беспорядок, потому что они
приблизительны и не сохраненные как точные значения. Значение с плавающей
запятой как записано в запросе SQL возможно, не то же самое значение,
которое представлено внутренне. Попытки обработать значения с плавающей
запятой как точные в сравнениях могут привести к проблемам. Они также
подвергаются зависимостям от платформы. Типы данных
Следующее использование в качестве примера
Если столбцы Правильный способ сделать сравнение числа с плавающей запятой состоит в
том, чтобы сначала выбрать приемлемую терпимость к различиям между числами и
затем сделать сравнение со значением терпимости. Например, если мы
соглашаемся, что числа с плавающей запятой должны быть расценены как равные,
если они равны в пределах точности одной десятитысячной (0.0001), сравнение
должно быть написано, чтобы найти различия большие, чем значение терпимости:
Значение предыдущих проблем: если Вы пытаетесь создать ведомое устройство
репликации, выводя табличное содержание с
mysqldump
на ведущем устройстве и перезагружая файл дампа в ведомое устройство,
таблицы, содержащие столбцы с плавающей запятой, могут отличаться
между двумя хостами. MySQL использует оптимизатор на основе издержек, чтобы определить лучший
способ решить запрос. Во многих случаях, MySQL может вычислить самый лучший
план запроса, но иногда MySQL не имеет достаточной информации о данных и
должен сделать предположения о данных. Для случаев, когда MySQL не делает "правильной" вещи, есть
инструменты, которые могут помочь MySQL: Используйте оператор Если Вы получаете дублирования ключа, используя
Если Вы используете Следующий список указывает ограничения на использование таблиц
Таблица Этот раздел перечисляет известные проблемы в недавних версиях MySQL. Для информации о специфических вопросах платформы, см. разделы
2.1 и
26.5. Следующие проблемы известны: Оптимизация подзапроса для Например: Запросы Если и только если предыдущие запросы не имеют предложения
Например, для Запрос оптимизирован по-другому на ведущем и ведомом
устройствах только если: Таблица сохранена, используя различные механизмы хранения на
ведущем и ведомом устройстве. Возможно использовать различные механизмы
хранения в этой ситуации. Например, Вы можете использовать
Эта проблема может также затронуть восстановление базы данных, используя
mysqlbinlog|mysql. Самый легкий способ избежать этой проблемы состоит в том, чтобы добавить
Пример этого:
Отметьте, что это происходит только для запросов, которые не имеют
столбцов
Приложение B. Ошибки, коды
ошибок и общие проблемы
B.1. Источники информации об ошибке
SHOW WARNINGS
и
SHOW ERRORS
. Системная
переменная warning_count
указывает на число ошибок, предупреждений и примечаний.
Системная переменная
error_count
указывает на число ошибок.
Ее значение исключает предупреждения и примечания.GET DIAGNOSTICS
может использоваться, чтобы осмотреть диагностическую информацию в области
диагностики. См. раздел 14.6.7.3.SHOW SLAVE STATUS
выводит информацию об ошибках репликации, происходящих
на ведомой стороне.SHOW ENGINE INNODB STATUS
включает информацию о новой ошибке внешнего ключа, если запрос
CREATE TABLE
для таблицы
InnoDB
терпит неудачу.InnoDB
, см.
раздел 16.20.4.B.2. Типы значений ошибки
'42S02'
). Значения взяты из ANSI SQL и ODBC и
более-менее стандартизированы.mysql_errno()
.mysql_sqlstate()
.mysql_error()
.mysql_stmt_errno()
,
mysql_stmt_sqlstate()
и mysql_stmt_error()
. Все функции ошибок описаны в разделе 25.8
.mysql_warning_count()
. См. раздел 25.8.7.77.'00'
указывает на успех.'01'
указывает на предупреждение.'02'
указывает на "не найдено found".
Это релевантно в пределах контекста курсоров и используется, чтобы управлять
тем, что происходит, когда курсор достигает конца набора данных. Это условие
также происходит для запроса SELECT ... INTO
, который не получает строк.var_list
'02'
указывает на исключение.B.3. Коды ошибок сервера
shell> SELECT * FROM no_such_table;
ERROR 1146 (42S02): Table 'test.no_such_table' doesn't exist
Выведенное на экран сообщение содержит три типа информации:
1146
). Это число является
MySQL-определенным и не является переносимым к другим системам баз данных.
'42S02'
). Значения взяты
из ANSI SQL и ODBC и более-менее стандартизированы. Не у всех кодов ошибки
MySQL есть соответствующие значения SQLSTATE. В этих случаях используется
'HY000'
(общая ошибка).share/errmsg-utf8.txt
. %d
и %s
представляют числа и строки, соответственно, которые заменяются значениями
в сообщениии, когда оно выведено на экран.share/errmsg-utf8.txt
,
используются, чтобы произвести определения в исходных файлах
include/mysqld_error.h
и include/mysqld_ername.h
.
share/errmsg-utf8.txt
используются, чтобы произвести определения в исходном файле
include/sql_state.h
MySQL.1002
SQLSTATE: HY000
(ER_NO
)1003
SQLSTATE: HY000
(ER_YES
)
EXPLAIN
производит сообщения примечаний.
ER_YES
используется в
столбце Code
для этих сообщений в последующем выводе
SHOW WARNINGS
.1004
SQLSTATE: HY000
(ER_CANT_CREATE_FILE
)
1005
SQLSTATE: HY000
(ER_CANT_CREATE_TABLE
)
InnoDB
выдает эту ошибку, когда таблица не может быть
составлена. Если сообщение об ошибке относится к ошибке 150, создание таблицы
провалилось из-за того, что ограничение внешнего ключа не было правильно
сформировано. Если сообщение об ошибке относится к ошибке 1, создание таблицы
провалилось потому, что таблица включает имя столбца, которое соответствует
названию внутренней таблицы InnoDB
.1006
SQLSTATE: HY000
(ER_CANT_CREATE_DB
)
1007
SQLSTATE: HY000
(ER_DB_CREATE_EXISTS
)
IF NOT
EXISTS
в CREATE DATABASE
для обхода ошибки.1008
SQLSTATE: HY000
(ER_DB_DROP_EXISTS
)
1010
SQLSTATE: HY000
(ER_DB_DROP_RMDIR
)
1012
SQLSTATE: HY000
(
ER_CANT_FIND_SYSTEM_REC
)
InnoDB
для попыток получить доступ к
InnoDB
-таблицам INFORMATION_SCHEMA
,
когда InnoDB
недоступно.1013
SQLSTATE: HY000
(ER_CANT_GET_STAT
)
1015
SQLSTATE: HY000
(ER_CANT_LOCK
)
1016
SQLSTATE: HY000
(ER_CANT_OPEN_FILE
)
InnoDB
возвращает эту ошибку, когда
файлы данных таблицы
InnoDB
не могут быть найдены.1017
SQLSTATE: HY000
(ER_FILE_NOT_FOUND
)
1018
SQLSTATE: HY000
(ER_CANT_READ_DIR
)
1020
SQLSTATE: HY000
(ER_CHECKREAD
)
1022
SQLSTATE: 23000
(ER_DUP_KEY
)
1024
SQLSTATE: HY000
(ER_ERROR_ON_READ
)
1025
SQLSTATE: HY000
(ER_ERROR_ON_RENAME
)
1026
SQLSTATE: HY000
(ER_ERROR_ON_WRITE
)
1027
SQLSTATE: HY000
(ER_FILE_USED
)
1028
SQLSTATE: HY000
(ER_FILSORT_ABORT
)
1030
SQLSTATE: HY000
(ER_GET_ERRNO
)
%d
, чтобы видеть, что означает ошибка в
Вашей OS. Например, 28 указывает, что Вы исчерпали дисковое пространство.
1031
SQLSTATE: HY000
(ER_ILLEGAL_HA
)
1032
SQLSTATE: HY000
(ER_KEY_NOT_FOUND
)
1033
SQLSTATE: HY000
(ER_NOT_FORM_FILE
)
1034
SQLSTATE: HY000
(ER_NOT_KEYFILE
)
1035
SQLSTATE: HY000
(ER_OLD_KEYFILE
)
1036
SQLSTATE: HY000
(ER_OPEN_AS_READONLY
)
1037
SQLSTATE: HY001
(ER_OUTOFMEMORY
)
1038
SQLSTATE: HY001
(ER_OUT_OF_SORTMEMORY
)
1040
SQLSTATE: 08004
(ER_CON_COUNT_ERROR
)
1041
SQLSTATE: HY000
(ER_OUT_OF_RESOURCES
)
1042
SQLSTATE: 08S01
(ER_BAD_HOST_ERROR
)
1043
SQLSTATE: 08S01
(ER_HANDSHAKE_ERROR
)
1044
SQLSTATE: 42000
(
ER_DBACCESS_DENIED_ERROR
)
1045
SQLSTATE: 28000
(
ER_ACCESS_DENIED_ERROR
)
1046
SQLSTATE: 3D000
(ER_NO_DB_ERROR
)
1047
SQLSTATE: 08S01
(ER_UNKNOWN_COM_ERROR
)
1048
SQLSTATE: 23000
(ER_BAD_NULL_ERROR
)
1049
SQLSTATE: 42000
(ER_BAD_DB_ERROR
)
1050
SQLSTATE: 42S01
(ER_TABLE_EXISTS_ERROR
)
1051
SQLSTATE: 42S02
(ER_BAD_TABLE_ERROR
)
1052
SQLSTATE: 23000
(ER_NON_UNIQ_ERROR
)
mysql> SELECT i FROM t INNER JOIN t AS t2;
ERROR 1052 (23000): Column 'i' in field list is ambiguous
mysql> SELECT * FROM t LEFT JOIN t AS t2 ON i = i;
ERROR 1052 (23000): Column 'i' in on clause is ambiguous
Решения:
mysql> SELECT t2.i FROM t INNER JOIN t AS t2;
mysql> SELECT * FROM t LEFT JOIN t AS t2 USING (i);
1053
SQLSTATE: 08S01
(ER_SERVER_SHUTDOWN
)1054
SQLSTATE: 42S22
(ER_BAD_FIELD_ERROR
)
1055
SQLSTATE: 42000
(
ER_WRONG_FIELD_WITH_GROUP
)
1056
SQLSTATE: 42000
(ER_WRONG_GROUP_FIELD
)
1057
SQLSTATE: 42000
(ER_WRONG_SUM_SELECT
)
1058
SQLSTATE: 21S01
(ER_WRONG_VALUE_COUNT
)
1059
SQLSTATE: 42000
(ER_TOO_LONG_IDENT
)
1060
SQLSTATE: 42S21
(ER_DUP_FIELDNAME
)
1061
SQLSTATE: 42000
(ER_DUP_KEYNAME
)
1062
SQLSTATE: 23000
(ER_DUP_ENTRY
)
ER_DUP_ENTRY_WITH_KEY_NAME
.1063
SQLSTATE: 42000
(ER_WRONG_FIELD_SPEC
)
1064
SQLSTATE: 42000
(ER_PARSE_ERROR
)
1065
SQLSTATE: 42000
(ER_EMPTY_QUERY
)
1066
SQLSTATE: 42000
(ER_NONUNIQ_TABLE
)
1067
SQLSTATE: 42000
(ER_INVALID_DEFAULT
)
1068
SQLSTATE: 42000
(ER_MULTIPLE_PRI_KEY
)
1069
SQLSTATE: 42000
(ER_TOO_MANY_KEYS
)
1070
SQLSTATE: 42000
(ER_TOO_MANY_KEY_PARTS
)
1071
SQLSTATE: 42000
(ER_TOO_LONG_KEY
)
1072
SQLSTATE: 42000
(
ER_KEY_COLUMN_DOES_NOT_EXITS
)
1073
SQLSTATE: 42000
(ER_BLOB_USED_AS_KEY
)
1074
SQLSTATE: 42000
(
ER_TOO_BIG_FIELDLENGTH
)
1075
SQLSTATE: 42000
(ER_WRONG_AUTO_KEY
)
1076
SQLSTATE: HY000
(ER_READY
)
1077
SQLSTATE: HY000
(ER_NORMAL_SHUTDOWN
)
1079
SQLSTATE: HY000
(ER_SHUTDOWN_COMPLETE
)
1080
SQLSTATE: 08S01
(ER_FORCING_CLOSE
)
1081
SQLSTATE: 08S01
(ER_IPSOCK_ERROR
)
1082
SQLSTATE: 42S12
(ER_NO_SUCH_INDEX
)
1083
SQLSTATE: 42000
(
ER_WRONG_FIELD_TERMINATORS
)
1084
SQLSTATE: 42000
(ER_BLOBS_AND_NO_TERMINATED
)
1085
SQLSTATE: HY000
(ER_TEXTFILE_NOT_READABLE
)
1086
SQLSTATE: HY000
(ER_FILE_EXISTS_ERROR
)
1087
SQLSTATE: HY000
(ER_LOAD_INFO
)
1088
SQLSTATE: HY000
(ER_ALTER_INFO
)
1089
SQLSTATE: HY000
(ER_WRONG_SUB_KEY
)
1090
SQLSTATE: 42000
(ER_CANT_REMOVE_ALL_FIELDS
)
1091
SQLSTATE: 42000
(ER_CANT_DROP_FIELD_OR_KEY
)
1092
SQLSTATE: HY000
(ER_INSERT_INFO
)
1093
SQLSTATE: HY000
(ER_UPDATE_TABLE_USED
)
derived_merge
в системной переменной
optimizer_switch
, чтобы вынудить подзапрос использовать временную таблицу, которая точно
будет не той таблицей, которая меняется. См.
раздел 9.2.1.18.3.1094
SQLSTATE: HY000
(ER_NO_SUCH_THREAD
)
1095
SQLSTATE: HY000
(ER_KILL_DENIED_ERROR
)
1096
SQLSTATE: HY000
(ER_NO_TABLES_USED
)
1097
SQLSTATE: HY000
(ER_TOO_BIG_SET
)
1098
SQLSTATE: HY000
(ER_NO_UNIQUE_LOGFILE
)
1099
SQLSTATE: HY000
(
ER_TABLE_NOT_LOCKED_FOR_WRITE
)
1100
SQLSTATE: HY000
(ER_TABLE_NOT_LOCKED
)
1101
SQLSTATE: 42000
(
ER_BLOB_CANT_HAVE_DEFAULT
)
1102
SQLSTATE: 42000
(ER_WRONG_DB_NAME
)
1103
SQLSTATE: 42000
(ER_WRONG_TABLE_NAME
)
1104
SQLSTATE: 42000
(ER_TOO_BIG_SELECT
)
1105
SQLSTATE: HY000
(ER_UNKNOWN_ERROR
)
1106
SQLSTATE: 42000
(ER_UNKNOWN_PROCEDURE
)
1107
SQLSTATE: 42000
(
ER_WRONG_PARAMCOUNT_TO_PROCEDURE
)
1108
SQLSTATE: HY000
(
ER_WRONG_PARAMETERS_TO_PROCEDURE
)
1109
SQLSTATE: 42S02
(ER_UNKNOWN_TABLE
)
1110
SQLSTATE: 42000
(
ER_FIELD_SPECIFIED_TWICE
)
1111
SQLSTATE: HY000
(
ER_INVALID_GROUP_FUNC_USE
)
1112
SQLSTATE: 42000
(
ER_UNSUPPORTED_EXTENSION
)
1113
SQLSTATE: 42000
(
ER_TABLE_MUST_HAVE_COLUMNS
)
1114
SQLSTATE: HY000
(ER_RECORD_FILE_FULL
)
InnoDB
возвращает эту ошибку, когда системное табличное
пространство исчерпывает свободное пространство. Реконфигурируйте системное
табличное пространство, чтобы добавить новый файл с данными.1115
SQLSTATE: 42000
(
ER_UNKNOWN_CHARACTER_SET
)
1116
SQLSTATE: HY000
(ER_TOO_MANY_TABLES
)
1117
SQLSTATE: HY000
(ER_TOO_MANY_FIELDS
)
1118
SQLSTATE: 42000
(ER_TOO_BIG_ROWSIZE
)
1119
SQLSTATE: HY000
(ER_STACK_OVERRUN
)
1120
SQLSTATE: 42000
(ER_WRONG_OUTER_JOIN
)
1121
SQLSTATE: 42000
(
ER_NULL_COLUMN_IN_INDEX
)
1122
SQLSTATE: HY000
(ER_CANT_FIND_UDF
)
1123
SQLSTATE: HY000
(
ER_CANT_INITIALIZE_UDF
)
1124
SQLSTATE: HY000
(ER_UDF_NO_PATHS
)
1125
SQLSTATE: HY000
(ER_UDF_EXISTS
)
1126
SQLSTATE: HY000
(ER_CANT_OPEN_LIBRARY
)
1127
SQLSTATE: HY000
(ER_CANT_FIND_DL_ENTRY
)
1128
SQLSTATE: HY000
(
ER_FUNCTION_NOT_DEFINED
)
1129
SQLSTATE: HY000
(ER_HOST_IS_BLOCKED
)
1130
SQLSTATE: HY000
(
ER_HOST_NOT_PRIVILEGED
)
1131
SQLSTATE: 42000
(
ER_PASSWORD_ANONYMOUS_USER
)
1132
SQLSTATE: 42000
(
ER_PASSWORD_NOT_ALLOWED
)
1133
SQLSTATE: 42000
(ER_PASSWORD_NO_MATCH
)
1134
SQLSTATE: HY000
(ER_UPDATE_INFO
)
1135
SQLSTATE: HY000
(ER_CANT_CREATE_THREAD
)
1136
SQLSTATE: 21S01
(
ER_WRONG_VALUE_COUNT_ON_ROW
)
1137
SQLSTATE: HY000
(ER_CANT_REOPEN_TABLE
)
1138
SQLSTATE: 22004
(
ER_INVALID_USE_OF_NULL
)
1139
SQLSTATE: 42000
(ER_REGEXP_ERROR
)
1140
SQLSTATE: 42000
(
ER_MIX_OF_GROUP_FUNC_AND_FIELDS
)
1141
SQLSTATE: 42000
(ER_NONEXISTING_GRANT
)
1142
SQLSTATE: 42000
(
ER_TABLEACCESS_DENIED_ERROR
)
1143
SQLSTATE: 42000
(
ER_COLUMNACCESS_DENIED_ERROR
)
1144
SQLSTATE: 42000
(
ER_ILLEGAL_GRANT_FOR_TABLE
)
1145
SQLSTATE: 42000
(
ER_GRANT_WRONG_HOST_OR_USER
)
1146
SQLSTATE: 42S02
(ER_NO_SUCH_TABLE
)
1147
SQLSTATE: 42000
(
ER_NONEXISTING_TABLE_GRANT
)
1148
SQLSTATE: 42000
(
ER_NOT_ALLOWED_COMMAND
)
1149
SQLSTATE: 42000
(ER_SYNTAX_ERROR
)
1152
SQLSTATE: 08S01
(
ER_ABORTING_CONNECTION
)
1153
SQLSTATE: 08S01
(
ER_NET_PACKET_TOO_LARGE
)
1154
SQLSTATE: 08S01
(
ER_NET_READ_ERROR_FROM_PIPE
)
1155
SQLSTATE: 08S01
(ER_NET_FCNTL_ERROR
)
1156
SQLSTATE: 08S01
(
ER_NET_PACKETS_OUT_OF_ORDER
)
1157
SQLSTATE: 08S01
(
ER_NET_UNCOMPRESS_ERROR
)
1158
SQLSTATE: 08S01
(ER_NET_READ_ERROR
)
1159
SQLSTATE: 08S01
(
ER_NET_READ_INTERRUPTED
)
1160
SQLSTATE: 08S01
(ER_NET_ERROR_ON_WRITE
)
1161
SQLSTATE: 08S01
(
ER_NET_WRITE_INTERRUPTED
)
1162
SQLSTATE: 42000
(ER_TOO_LONG_STRING
)
1163
SQLSTATE: 42000
(
ER_TABLE_CANT_HANDLE_BLOB
)
1164
SQLSTATE: 42000
(
ER_TABLE_CANT_HANDLE_AUTO_INCREMENT
)
1166
SQLSTATE: 42000
(ER_WRONG_COLUMN_NAME
)
1167
SQLSTATE: 42000
(ER_WRONG_KEY_COLUMN
)
1168
SQLSTATE: HY000
(ER_WRONG_MRG_TABLE
)
1169
SQLSTATE: 23000
(ER_DUP_UNIQUE
)
1170
SQLSTATE: 42000
(
ER_BLOB_KEY_WITHOUT_LENGTH
)
1171
SQLSTATE: 42000
(
ER_PRIMARY_CANT_HAVE_NULL
)
1172
SQLSTATE: 42000
(ER_TOO_MANY_ROWS
)
1173
SQLSTATE: 42000
(
ER_REQUIRES_PRIMARY_KEY
)
1175
SQLSTATE: HY000
(
ER_UPDATE_WITHOUT_KEY_IN_SAFE_MODE
)
1176
SQLSTATE: 42000
(ER_KEY_DOES_NOT_EXITS
)
1177
SQLSTATE: 42000
(
ER_CHECK_NO_SUCH_TABLE
)
1178
SQLSTATE: 42000
(
ER_CHECK_NOT_IMPLEMENTED
)
1179
SQLSTATE: 25000
(
ER_CANT_DO_THIS_DURING_AN_TRANSACTION
)
1180
SQLSTATE: HY000
(
ER_ERROR_DURING_COMMIT
)
1181
SQLSTATE: HY000
(
ER_ERROR_DURING_ROLLBACK
)
1182
SQLSTATE: HY000
(
ER_ERROR_DURING_FLUSH_LOGS
)
1184
SQLSTATE: 08S01
(
ER_NEW_ABORTING_CONNECTION
)
1188
SQLSTATE: HY000
(ER_MASTER
)
1189
SQLSTATE: 08S01
(ER_MASTER_NET_READ
)
1190
SQLSTATE: 08S01
(ER_MASTER_NET_WRITE
)
1191
SQLSTATE: HY000
(
ER_FT_MATCHING_KEY_NOT_FOUND
)
1192
SQLSTATE: HY000
(
ER_LOCK_OR_ACTIVE_TRANSACTION
)
1193
SQLSTATE: HY000
(
ER_UNKNOWN_SYSTEM_VARIABLE
)
1194
SQLSTATE: HY000
(ER_CRASHED_ON_USAGE
)
1195
SQLSTATE: HY000
(ER_CRASHED_ON_REPAIR
)
1196
SQLSTATE: HY000
(ER_WARNING_NOT_COMPLETE_ROLLBACK
)
1197
SQLSTATE: HY000
(ER_TRANS_CACHE_FULL
)
1199
SQLSTATE: HY000
(ER_SLAVE_NOT_RUNNING
)
1200
SQLSTATE: HY000
(ER_BAD_SLAVE
)
1201
SQLSTATE: HY000
(ER_MASTER_INFO
)
1202
SQLSTATE: HY000
(ER_SLAVE_THREAD
)
1203
SQLSTATE: 42000
(ER_TOO_MANY_USER_CONNECTIONS
)
1204
SQLSTATE: HY000
(ER_SET_CONSTANTS_ONLY
)
1205
SQLSTATE: HY000
(ER_LOCK_WAIT_TIMEOUT
)
InnoDB
выдает эту ошибку, когда блокировка ждет тайм-аут.
Запрос, который ждал слишком долго,
откатывается (не вся
транзакция).
Вы можете увеличить значение параметра конфигурации
innodb_lock_wait_timeout
, если запросы SQL должны ждать дольше
других транзакций, чтобы завершиться, или уменьшить это, если слишком много
продолжительных транзакций вызывают проблемы
блокировки и сокращают
параллелизм
на занятой системе.1206
SQLSTATE: HY000
(ER_LOCK_TABLE_FULL
)
InnoDB
выдает эту ошибку, когда общее количество блокировок
превышает объем памяти, посвященный управлению блокировками. Чтобы избежать
этой ошибки, увеличьте значение
innodb_buffer_pool_size
. В пределах отдельного приложения обходное
решение может быть в том, чтобы разделить большую работу на мелкие кусочки.
Например, если ошибка происходит для большого
INSERT
, выполните несколько меньших операций
INSERT
.1207
SQLSTATE: 25000
(
ER_READ_ONLY_TRANSACTION
)
1210
SQLSTATE: HY000
(ER_WRONG_ARGUMENTS
)
1211
SQLSTATE: 42000
(
ER_NO_PERMISSION_TO_CREATE_USER
)
1213
SQLSTATE: 40001
(ER_LOCK_DEADLOCK
)
InnoDB
выдает эту ошибку, когда
транзакция сталкивается с
тупиком и автоматически
откатывается так, чтобы Ваше
приложение могло принять меры по ликвидации последствий. Чтобы оправиться от
этой ошибки, выполните все операции в этой транзакции снова. Тупик
происходит, когда запросы о блокировках прибывают в непоследовательном
порядке между транзакциями. Отмененная транзакция выпустила все свои
блокировки, и другая может теперь получить все блокировки, которые просила.
Таким образом, когда Вы запускаете повторно транзакцию, которая была
отменена, ей, возможно, придется ждать других транзакций, чтобы завершиться,
но как правило тупик не возвращается. Если Вы сталкиваетесь с частыми
тупиками, сделайте последовательность из блокировки операций
(LOCK TABLES
, SELECT ... FOR UPDATE
и т. п.)
последовательно между различными транзакциями или приложениями, которые
испытывают проблему. См.
раздел 16.5.5.1214
SQLSTATE: HY000
(
ER_TABLE_CANT_HANDLE_FT
)
1215
SQLSTATE: HY000
(ER_CANNOT_ADD_FOREIGN
)
1216
SQLSTATE: 23000
(ER_NO_REFERENCED_ROW
)
InnoDB
выдает эту ошибку, когда Вы пытаетесь добавить строку,
но нет никакой родительской строки, и
ограничения внешнего
ключа терпят неудачу. Добавьте родительскую строку сначала.1217
SQLSTATE: 23000
(
ER_ROW_IS_REFERENCED
)
InnoDB
выдает эту ошибку, когда Вы пытаетесь удалить
родительскую строку, у которой есть дочерние элементы, и
ограничения внешнего
ключа терпят неудачу. Удалите дочерние элементы сначала.1218
SQLSTATE: 08S01
(ER_CONNECT_TO_MASTER
)
1220
SQLSTATE: HY000
(
ER_ERROR_WHEN_EXECUTING_COMMAND
)
1221
SQLSTATE: HY000
(ER_WRONG_USAGE
)
1222
SQLSTATE: 21000
(
ER_WRONG_NUMBER_OF_COLUMNS_IN_SELECT
)
1223
SQLSTATE: HY000
(
ER_CANT_UPDATE_WITH_READLOCK
)
1224
SQLSTATE: HY000
(ER_MIXING_NOT_ALLOWED
)
1225
SQLSTATE: HY000
(ER_DUP_ARGUMENT
)
1226
SQLSTATE: 42000
(ER_USER_LIMIT_REACHED
)
1227
SQLSTATE: 42000
(ER_SPECIFIC_ACCESS_DENIED_ERROR
)
1228
SQLSTATE: HY000
(ER_LOCAL_VARIABLE
)
1229
SQLSTATE: HY000
(ER_GLOBAL_VARIABLE
)
1230
SQLSTATE: 42000
(ER_NO_DEFAULT
)
1231
SQLSTATE: 42000
(ER_WRONG_VALUE_FOR_VAR
)
1232
SQLSTATE: 42000
(ER_WRONG_TYPE_FOR_VAR
)
1233
SQLSTATE: HY000
(ER_VAR_CANT_BE_READ
)
1234
SQLSTATE: 42000
(ER_CANT_USE_OPTION_HERE
)
1235
SQLSTATE: 42000
(ER_NOT_SUPPORTED_YET
)
1236
SQLSTATE: HY000
(ER_MASTER_FATAL_ERROR_READING_BINLOG
)
1237
SQLSTATE: HY000
(ER_SLAVE_IGNORED_TABLE
)
1238
SQLSTATE: HY000
(ER_INCORRECT_GLOBAL_LOCAL_VAR
)
1239
SQLSTATE: 42000
(ER_WRONG_FK_DEF
)
1240
SQLSTATE: HY000
(ER_KEY_REF_DO_NOT_MATCH_TABLE_REF
)
1241
SQLSTATE: 21000
(ER_OPERAND_COLUMNS
)
1242
SQLSTATE: 21000
(ER_SUBQUERY_NO_1_ROW
)
1243
SQLSTATE: HY000
(ER_UNKNOWN_STMT_HANDLER
)
1244
SQLSTATE: HY000
(ER_CORRUPT_HELP_DB
)
1246
SQLSTATE: HY000
(ER_AUTO_CONVERT
)
1247
SQLSTATE: 42S22
(ER_ILLEGAL_REFERENCE
)
1248
SQLSTATE: 42000
(ER_DERIVED_MUST_HAVE_ALIAS
)
1249
SQLSTATE: 01000
(ER_SELECT_REDUCED
)
1250
SQLSTATE: 42000
(ER_TABLENAME_NOT_ALLOWED_HERE
)
1251
SQLSTATE: 08004
(ER_NOT_SUPPORTED_AUTH_MODE
)
1252
SQLSTATE: 42000
(ER_SPATIAL_CANT_HAVE_NULL
)
1253
SQLSTATE: 42000
(ER_COLLATION_CHARSET_MISMATCH
)
1256
SQLSTATE: HY000
(ER_TOO_BIG_FOR_UNCOMPRESS
)
1257
SQLSTATE: HY000
(ER_ZLIB_Z_MEM_ERROR
)
1258
SQLSTATE: HY000
(ER_ZLIB_Z_BUF_ERROR
)
1259
SQLSTATE: HY000
(ER_ZLIB_Z_DATA_ERROR
)
1260
SQLSTATE: HY000
(ER_CUT_VALUE_GROUP_CONCAT
)
1261
SQLSTATE: 01000
(ER_WARN_TOO_FEW_RECORDS
)
1262
SQLSTATE: 01000
(ER_WARN_TOO_MANY_RECORDS
)
1263
SQLSTATE: 22004
(ER_WARN_NULL_TO_NOTNULL
)
1264
SQLSTATE: 22003
(ER_WARN_DATA_OUT_OF_RANGE
)
1265
SQLSTATE: 01000
(WARN_DATA_TRUNCATED
)
1266
SQLSTATE: HY000
(ER_WARN_USING_OTHER_HANDLER
)
1267
SQLSTATE: HY000
(ER_CANT_AGGREGATE_2COLLATIONS
)
1269
SQLSTATE: HY000
(ER_REVOKE_GRANTS
)
1270
SQLSTATE: HY000
(ER_CANT_AGGREGATE_3COLLATIONS
)
1271
SQLSTATE: HY000
(ER_CANT_AGGREGATE_NCOLLATIONS
)
1272
SQLSTATE: HY000
(ER_VARIABLE_IS_NOT_STRUCT
)
1273
SQLSTATE: HY000
(ER_UNKNOWN_COLLATION
)
1274
SQLSTATE: HY000
(ER_SLAVE_IGNORED_SSL_PARAMS
)
1275
SQLSTATE: HY000
(ER_SERVER_IS_IN_SECURE_AUTH_MODE
)
1276
SQLSTATE: HY000
(ER_WARN_FIELD_RESOLVED
)
1277
SQLSTATE: HY000
(ER_BAD_SLAVE_UNTIL_COND
)
1278
SQLSTATE: HY000
(ER_MISSING_SKIP_SLAVE
)
1279
SQLSTATE: HY000
(ER_UNTIL_COND_IGNORED
)
1280
SQLSTATE: 42000
(ER_WRONG_NAME_FOR_INDEX
)
1281
SQLSTATE: 42000
(ER_WRONG_NAME_FOR_CATALOG
)
1282
SQLSTATE: HY000
(ER_WARN_QC_RESIZE
)
1283
SQLSTATE: HY000
(ER_BAD_FT_COLUMN
)
1284
SQLSTATE: HY000
(ER_UNKNOWN_KEY_CACHE
)
1285
SQLSTATE: HY000
(ER_WARN_HOSTNAME_WONT_WORK
)
1286
SQLSTATE: 42000
(ER_UNKNOWN_STORAGE_ENGINE
)
1287
SQLSTATE: HY000
(ER_WARN_DEPRECATED_SYNTAX
)
1288
SQLSTATE: HY000
(ER_NON_UPDATABLE_TABLE
)
1289
SQLSTATE: HY000
(ER_FEATURE_DISABLED
)
1290
SQLSTATE: HY000
(ER_OPTION_PREVENTS_STATEMENT
)
1291
SQLSTATE: HY000
(ER_DUPLICATED_VALUE_IN_TYPE
)
1292
SQLSTATE: 22007
(ER_TRUNCATED_WRONG_VALUE
)
1294
SQLSTATE: HY000
(ER_INVALID_ON_UPDATE
)
1295
SQLSTATE: HY000
(ER_UNSUPPORTED_PS
)
1296
SQLSTATE: HY000
(ER_GET_ERRMSG
)
1297
SQLSTATE: HY000
(ER_GET_TEMPORARY_ERRMSG
)
1298
SQLSTATE: HY000
(ER_UNKNOWN_TIME_ZONE
)
1299
SQLSTATE: HY000
(ER_WARN_INVALID_TIMESTAMP
)
1300
SQLSTATE: HY000
(ER_INVALID_CHARACTER_STRING
)
1301
SQLSTATE: HY000
(ER_WARN_ALLOWED_PACKET_OVERFLOWED
)
1302
SQLSTATE: HY000
(ER_CONFLICTING_DECLARATIONS
)
1303
SQLSTATE: 2F003
(ER_SP_NO_RECURSIVE_CREATE
)
1304
SQLSTATE: 42000
(ER_SP_ALREADY_EXISTS
)
1305
SQLSTATE: 42000
(ER_SP_DOES_NOT_EXIST
)
1306
SQLSTATE: HY000
(ER_SP_DROP_FAILED
)
1307
SQLSTATE: HY000
(ER_SP_STORE_FAILED
)
1308
SQLSTATE: 42000
(ER_SP_LILABEL_MISMATCH
)
1309
SQLSTATE: 42000
(ER_SP_LABEL_REDEFINE
)
1310
SQLSTATE: 42000
(ER_SP_LABEL_MISMATCH
)
1311
SQLSTATE: 01000
(ER_SP_UNINIT_VAR
)
1312
SQLSTATE: 0A000
(ER_SP_BADSELECT
)
1313
SQLSTATE: 42000
(ER_SP_BADRETURN
)
1314
SQLSTATE: 0A000
(ER_SP_BADSTATEMENT
)
1315
SQLSTATE: 42000
(ER_UPDATE_LOG_DEPRECATED_IGNORED
)
1316
SQLSTATE: 42000
(ER_UPDATE_LOG_DEPRECATED_TRANSLATED
)
1317
SQLSTATE: 70100
(ER_QUERY_INTERRUPTED
)
1318
SQLSTATE: 42000
(ER_SP_WRONG_NO_OF_ARGS
)
1319
SQLSTATE: 42000
(ER_SP_COND_MISMATCH
)
1320
SQLSTATE: 42000
(ER_SP_NORETURN
)
1321
SQLSTATE: 2F005
(ER_SP_NORETURNEND
)
1322
SQLSTATE: 42000
(ER_SP_BAD_CURSOR_QUERY
)
1323
SQLSTATE: 42000
(ER_SP_BAD_CURSOR_SELECT
)
1324
SQLSTATE: 42000
(ER_SP_CURSOR_MISMATCH
)
1325
SQLSTATE: 24000
(ER_SP_CURSOR_ALREADY_OPEN
)
1326
SQLSTATE: 24000
(ER_SP_CURSOR_NOT_OPEN
)
1327
SQLSTATE: 42000
(ER_SP_UNDECLARED_VAR
)
1328
SQLSTATE: HY000
(ER_SP_WRONG_NO_OF_FETCH_ARGS
)
1329
SQLSTATE: 02000
(ER_SP_FETCH_NO_DATA
)
1330
SQLSTATE: 42000
(ER_SP_DUP_PARAM
)
1331
SQLSTATE: 42000
(ER_SP_DUP_VAR
)
1332
SQLSTATE: 42000
(ER_SP_DUP_COND
)
1333
SQLSTATE: 42000
(ER_SP_DUP_CURS
)
1334
SQLSTATE: HY000
(ER_SP_CANT_ALTER
)
1335
SQLSTATE: 0A000
(ER_SP_SUBSELECT_NYI
)
1336
SQLSTATE: 0A000
(ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG
)
1337
SQLSTATE: 42000
(ER_SP_VARCOND_AFTER_CURSHNDLR
)
1338
SQLSTATE: 42000
(ER_SP_CURSOR_AFTER_HANDLER
)
1339
SQLSTATE: 20000
(ER_SP_CASE_NOT_FOUND
)
1340
SQLSTATE: HY000
(ER_FPARSER_TOO_BIG_FILE
)
1341
SQLSTATE: HY000
(ER_FPARSER_BAD_HEADER
)
1342
SQLSTATE: HY000
(ER_FPARSER_EOF_IN_COMMENT
)
1343
SQLSTATE: HY000
(ER_FPARSER_ERROR_IN_PARAMETER
)
1344
SQLSTATE: HY000
(ER_FPARSER_EOF_IN_UNKNOWN_PARAMETER
)
1345
SQLSTATE: HY000
(ER_VIEW_NO_EXPLAIN
)
1347
SQLSTATE: HY000
(ER_WRONG_OBJECT
)
HANDLER OPEN
требует базовой
таблицы, а не ее представления. Это терпит неудачу если предпринято на
таблице INFORMATION_SCHEMA
, которая
осуществлена как представление таблицы словаря данных.1348
SQLSTATE: HY000
(ER_NONUPDATEABLE_COLUMN
)
1350
SQLSTATE: HY000
(ER_VIEW_SELECT_CLAUSE
)
1351
SQLSTATE: HY000
(ER_VIEW_SELECT_VARIABLE
)
1352
SQLSTATE: HY000
(ER_VIEW_SELECT_TMPTABLE
)
1353
SQLSTATE: HY000
(ER_VIEW_WRONG_LIST
)
1354
SQLSTATE: HY000
(ER_WARN_VIEW_MERGE
)
1355
SQLSTATE: HY000
(ER_WARN_VIEW_WITHOUT_KEY
)
1356
SQLSTATE: HY000
(ER_VIEW_INVALID
)
1357
SQLSTATE: HY000
(ER_SP_NO_DROP_SP
)
1359
SQLSTATE: HY000
(ER_TRG_ALREADY_EXISTS
)
1360
SQLSTATE: HY000
(ER_TRG_DOES_NOT_EXIST
)
1361
SQLSTATE: HY000
(ER_TRG_ON_VIEW_OR_TEMP_TABLE
)
1362
SQLSTATE: HY000
(ER_TRG_CANT_CHANGE_ROW
)
1363
SQLSTATE: HY000
(ER_TRG_NO_SUCH_ROW_IN_TRG
)
1364
SQLSTATE: HY000
(ER_NO_DEFAULT_FOR_FIELD
)
1365
SQLSTATE: 22012
(ER_DIVISION_BY_ZERO
)
1366
SQLSTATE: HY000
(ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
)
1367
SQLSTATE: 22007
(ER_ILLEGAL_VALUE_FOR_TYPE
)
1368
SQLSTATE: HY000
(ER_VIEW_NONUPD_CHECK
)
1369
SQLSTATE: HY000
(ER_VIEW_CHECK_FAILED
)
1370
SQLSTATE: 42000
(ER_PROCACCESS_DENIED_ERROR
)
1371
SQLSTATE: HY000
(ER_RELAY_LOG_FAIL
)
1373
SQLSTATE: HY000
(ER_UNKNOWN_TARGET_BINLOG
)
1374
SQLSTATE: HY000
(ER_IO_ERR_LOG_INDEX_READ
)
1375
SQLSTATE: HY000
(ER_BINLOG_PURGE_PROHIBITED
)
1376
SQLSTATE: HY000
(ER_FSEEK_FAIL
)
1377
SQLSTATE: HY000
(ER_BINLOG_PURGE_FATAL_ERR
)
1378
SQLSTATE: HY000
(ER_LOG_IN_USE
)
1379
SQLSTATE: HY000
(ER_LOG_PURGE_UNKNOWN_ERR
)
1380
SQLSTATE: HY000
(ER_RELAY_LOG_INIT
)
1381
SQLSTATE: HY000
(ER_NO_BINARY_LOGGING
)
1382
SQLSTATE: HY000
(ER_RESERVED_SYNTAX
)
1390
SQLSTATE: HY000
(ER_PS_MANY_PARAM
)
1391
SQLSTATE: HY000
(ER_KEY_PART_0
)
1392
SQLSTATE: HY000
(ER_VIEW_CHECKSUM
)
1393
SQLSTATE: HY000
(ER_VIEW_MULTIUPDATE
)
1394
SQLSTATE: HY000
(ER_VIEW_NO_INSERT_FIELD_LIST
)
1395
SQLSTATE: HY000
(ER_VIEW_DELETE_MERGE_VIEW
)
1396
SQLSTATE: HY000
(ER_CANNOT_USER
)
1397
SQLSTATE: XAE04
(ER_XAER_NOTA
)
1398
SQLSTATE: XAE05
(ER_XAER_INVAL
)
1399
SQLSTATE: XAE07
(ER_XAER_RMFAIL
)
1400
SQLSTATE: XAE09
(ER_XAER_OUTSIDE
)
1401
SQLSTATE: XAE03
(ER_XAER_RMERR
)
1402
SQLSTATE: XA100
(ER_XA_RBROLLBACK
)
1403
SQLSTATE: 42000
(ER_NONEXISTING_PROC_GRANT
)
1404
SQLSTATE: HY000
(ER_PROC_AUTO_GRANT_FAIL
)
1405
SQLSTATE: HY000
(ER_PROC_AUTO_REVOKE_FAIL
)
1406
SQLSTATE: 22001
(ER_DATA_TOO_LONG
)
1407
SQLSTATE: 42000
(ER_SP_BAD_SQLSTATE
)
1408
SQLSTATE: HY000
(ER_STARTUP
)
1409
SQLSTATE: HY000
(ER_LOAD_FROM_FIXED_SIZE_ROWS_TO_VAR
)
1410
SQLSTATE: 42000
(ER_CANT_CREATE_USER_WITH_GRANT
)
1411
SQLSTATE: HY000
(ER_WRONG_VALUE_FOR_TYPE
)
1412
SQLSTATE: HY000
(ER_TABLE_DEF_CHANGED
)
1413
SQLSTATE: 42000
(ER_SP_DUP_HANDLER
)
1414
SQLSTATE: 42000
(ER_SP_NOT_VAR_ARG
)
1415
SQLSTATE: 0A000
(ER_SP_NO_RETSET
)
1416
SQLSTATE: 22003
(ER_CANT_CREATE_GEOMETRY_OBJECT
)
1418
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_ROUTINE
)
1419
SQLSTATE: HY000
(ER_BINLOG_CREATE_ROUTINE_NEED_SUPER
)
1421
SQLSTATE: HY000
(ER_STMT_HAS_NO_OPEN_CURSOR
)
1422
SQLSTATE: HY000
(ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG
)
1423
SQLSTATE: HY000
(ER_NO_DEFAULT_FOR_VIEW_FIELD
)
1424
SQLSTATE: HY000
(ER_SP_NO_RECURSION
)
1425
SQLSTATE: 42000
(ER_TOO_BIG_SCALE
)
1426
SQLSTATE: 42000
(ER_TOO_BIG_PRECISION
)
1427
SQLSTATE: 42000
(ER_M_BIGGER_THAN_D
)
1428
SQLSTATE: HY000
(ER_WRONG_LOCK_OF_SYSTEM_TABLE
)
1429
SQLSTATE: HY000
(ER_CONNECT_TO_FOREIGN_DATA_SOURCE
)
1430
SQLSTATE: HY000
(ER_QUERY_ON_FOREIGN_DATA_SOURCE
)
1431
SQLSTATE: HY000
(ER_FOREIGN_DATA_SOURCE_DOESNT_EXIST
)
1432
SQLSTATE: HY000
(ER_FOREIGN_DATA_STRING_INVALID_CANT_CREATE
)
1433
SQLSTATE: HY000
(ER_FOREIGN_DATA_STRING_INVALID
)
1435
SQLSTATE: HY000
(ER_TRG_IN_WRONG_SCHEMA
)
1436
SQLSTATE: HY000
(ER_STACK_OVERRUN_NEED_MORE
)
1437
SQLSTATE: 42000
(ER_TOO_LONG_BODY
)
1438
SQLSTATE: HY000
(ER_WARN_CANT_DROP_DEFAULT_KEYCACHE
)
1439
SQLSTATE: 42000
(ER_TOO_BIG_DISPLAYWIDTH
)
1440
SQLSTATE: XAE08
(ER_XAER_DUPID
)
1441
SQLSTATE: 22008
(ER_DATETIME_FUNCTION_OVERFLOW
)
1442
SQLSTATE: HY000
(ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG
)
1443
SQLSTATE: HY000
(ER_VIEW_PREVENT_UPDATE
)
1444
SQLSTATE: HY000
(ER_PS_NO_RECURSION
)
1445
SQLSTATE: HY000
(ER_SP_CANT_SET_AUTOCOMMIT
)
1447
SQLSTATE: HY000
(ER_VIEW_FRM_NO_USER
)
1448
SQLSTATE: HY000
(ER_VIEW_OTHER_USER
)
1449
SQLSTATE: HY000
(ER_NO_SUCH_USER
)
1450
SQLSTATE: HY000
(ER_FORBID_SCHEMA_CHANGE
)
1451
SQLSTATE: 23000
(ER_ROW_IS_REFERENCED_2
)
1452
SQLSTATE: 23000
(ER_NO_REFERENCED_ROW_2
)
1453
SQLSTATE: 42000
(ER_SP_BAD_VAR_SHADOW
)
1454
SQLSTATE: HY000
(ER_TRG_NO_DEFINER
)
1455
SQLSTATE: HY000
(ER_OLD_FILE_FORMAT
)
1456
SQLSTATE: HY000
(ER_SP_RECURSION_LIMIT
)
1458
SQLSTATE: 42000
(ER_SP_WRONG_NAME
)
1459
SQLSTATE: HY000
(ER_TABLE_NEEDS_UPGRADE
)
1460
SQLSTATE: 42000
(ER_SP_NO_AGGREGATE
)
1461
SQLSTATE: 42000
(ER_MAX_PREPARED_STMT_COUNT_REACHED
)
1462
SQLSTATE: HY000
(ER_VIEW_RECURSIVE
)
1463
SQLSTATE: 42000
(ER_NON_GROUPING_FIELD_USED
)
1464
SQLSTATE: HY000
(ER_TABLE_CANT_HANDLE_SPKEYS
)
1465
SQLSTATE: HY000
(ER_NO_TRIGGERS_ON_SYSTEM_SCHEMA
)
1466
SQLSTATE: HY000
(ER_REMOVED_SPACES
)
1467
SQLSTATE: HY000
(ER_AUTOINC_READ_FAILED
)
1468
SQLSTATE: HY000
(ER_USERNAME
)
1469
SQLSTATE: HY000
(ER_HOSTNAME
)
1470
SQLSTATE: HY000
(ER_WRONG_STRING_LENGTH
)
1471
SQLSTATE: HY000
(ER_NON_INSERTABLE_TABLE
)
1472
SQLSTATE: HY000
(ER_ADMIN_WRONG_MRG_TABLE
)
1473
SQLSTATE: HY000
(ER_TOO_HIGH_LEVEL_OF_NESTING_FOR_SELECT
)
1474
SQLSTATE: HY000
(ER_NAME_BECOMES_EMPTY
)
1475
SQLSTATE: HY000
(ER_AMBIGUOUS_FIELD_TERM
)
1476
SQLSTATE: HY000
(ER_FOREIGN_SERVER_EXISTS
)
1477
SQLSTATE: HY000
(ER_FOREIGN_SERVER_DOESNT_EXIST
)
1478
SQLSTATE: HY000
(ER_ILLEGAL_HA_CREATE_OPTION
)
1479
SQLSTATE: HY000
(ER_PARTITION_REQUIRES_VALUES_ERROR
)
1480
SQLSTATE: HY000
(ER_PARTITION_WRONG_VALUES_ERROR
)
1481
SQLSTATE: HY000
(ER_PARTITION_MAXVALUE_ERROR
)
1484
SQLSTATE: HY000
(ER_PARTITION_WRONG_NO_PART_ERROR
)
1485
SQLSTATE: HY000
(ER_PARTITION_WRONG_NO_SUBPART_ERROR
)
1486
SQLSTATE: HY000
(ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR
)
1488
SQLSTATE: HY000
(ER_FIELD_NOT_FOUND_PART_ERROR
)
1490
SQLSTATE: HY000
(ER_INCONSISTENT_PARTITION_INFO_ERROR
)
1491
SQLSTATE: HY000
(ER_PARTITION_FUNC_NOT_ALLOWED_ERROR
)
1492
SQLSTATE: HY000
(ER_PARTITIONS_MUST_BE_DEFINED_ERROR
)
1493
SQLSTATE: HY000
(ER_RANGE_NOT_INCREASING_ERROR
)
1494
SQLSTATE: HY000
(ER_INCONSISTENT_TYPE_OF_FUNCTIONS_ERROR
)
1495
SQLSTATE: HY000
(ER_MULTIPLE_DEF_CONST_IN_LIST_PART_ERROR
)
1496
SQLSTATE: HY000
(ER_PARTITION_ENTRY_ERROR
)
1497
SQLSTATE: HY000
(ER_MIX_HANDLER_ERROR
)
1498
SQLSTATE: HY000
(ER_PARTITION_NOT_DEFINED_ERROR
)
1499
SQLSTATE: HY000
(ER_TOO_MANY_PARTITIONS_ERROR
)
1500
SQLSTATE: HY000
(ER_SUBPARTITION_ERROR
)
1501
SQLSTATE: HY000
(ER_CANT_CREATE_HANDLER_FILE
)
1502
SQLSTATE: HY000
(ER_BLOB_FIELD_IN_PART_FUNC_ERROR
)
1503
SQLSTATE: HY000
(ER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF
)
1504
SQLSTATE: HY000
(ER_NO_PARTS_ERROR
)
1505
SQLSTATE: HY000
(ER_PARTITION_MGMT_ON_NONPARTITIONED
)
1506
SQLSTATE: HY000
(ER_FOREIGN_KEY_ON_PARTITIONED
)
1507
SQLSTATE: HY000
(ER_DROP_PARTITION_NON_EXISTENT
)
1508
SQLSTATE: HY000
(ER_DROP_LAST_PARTITION
)
1509
SQLSTATE: HY000
(ER_COALESCE_ONLY_ON_HASH_PARTITION
)
1510
SQLSTATE: HY000
(ER_REORG_HASH_ONLY_ON_SAME_NO
)
1511
SQLSTATE: HY000
(ER_REORG_NO_PARAM_ERROR
)
1512
SQLSTATE: HY000
(ER_ONLY_ON_RANGE_LIST_PARTITION
)
1513
SQLSTATE: HY000
(ER_ADD_PARTITION_SUBPART_ERROR
)
1514
SQLSTATE: HY000
(ER_ADD_PARTITION_NO_NEW_PARTITION
)
1515
SQLSTATE: HY000
(ER_COALESCE_PARTITION_NO_PARTITION
)
1516
SQLSTATE: HY000
(ER_REORG_PARTITION_NOT_EXIST
)
1517
SQLSTATE: HY000
(ER_SAME_NAME_PARTITION
)
1518
SQLSTATE: HY000
(ER_NO_BINLOG_ERROR
)
1519
SQLSTATE: HY000
(ER_CONSECUTIVE_REORG_PARTITIONS
)
1520
SQLSTATE: HY000
(ER_REORG_OUTSIDE_RANGE
)
1521
SQLSTATE: HY000
(ER_PARTITION_FUNCTION_FAILURE
)
1523
SQLSTATE: HY000
(ER_LIMITED_PART_RANGE
)
1524
SQLSTATE: HY000
(ER_PLUGIN_IS_NOT_LOADED
)
1525
SQLSTATE: HY000
(ER_WRONG_VALUE
)
1526
SQLSTATE: HY000
(ER_NO_PARTITION_FOR_GIVEN_VALUE
)
1527
SQLSTATE: HY000
(ER_FILEGROUP_OPTION_ONLY_ONCE
)
1528
SQLSTATE: HY000
(ER_CREATE_FILEGROUP_FAILED
)
1529
SQLSTATE: HY000
(ER_DROP_FILEGROUP_FAILED
)
1530
SQLSTATE: HY000
(ER_TABLESPACE_AUTO_EXTEND_ERROR
)
1531
SQLSTATE: HY000
(ER_WRONG_SIZE_NUMBER
)
1532
SQLSTATE: HY000
(ER_SIZE_OVERFLOW_ERROR
)
1533
SQLSTATE: HY000
(ER_ALTER_FILEGROUP_FAILED
)
1534
SQLSTATE: HY000
(ER_BINLOG_ROW_LOGGING_FAILED
)
1537
SQLSTATE: HY000
(ER_EVENT_ALREADY_EXISTS
)
1539
SQLSTATE: HY000
(ER_EVENT_DOES_NOT_EXIST
)
1542
SQLSTATE: HY000
(ER_EVENT_INTERVAL_NOT_POSITIVE_OR_TOO_BIG
)
1543
SQLSTATE: HY000
(ER_EVENT_ENDS_BEFORE_STARTS
)
1544
SQLSTATE: HY000
(ER_EVENT_EXEC_TIME_IN_THE_PAST
)
1551
SQLSTATE: HY000
(ER_EVENT_SAME_NAME
)
1553
SQLSTATE: HY000
(ER_DROP_INDEX_FK
)
InnoDB
возвращает эту ошибку, когда Вы пытаетесь удалить
последний индекс, который может провести особое справочное ограничение.InnoDB
требует, чтобы индексирование существовало на столбцах
внешнего ключа так, чтобы
операции UPDATE
и DELETE
на
родительской таблице
могли легко проверить, существуют ли соответствующие строки в
the дочерней таблице. MySQL
создает или удаляет такой индекс автоматически при необходимости, как
побочный эффект CREATE TABLE
,
CREATE INDEX
и
ALTER TABLE
.InnoDB
проверяет, если
индексирование используется для того, чтобы проверить ограничение внешнего
ключа. Нормально удалить индекс, если есть другой, который может
использоваться, чтобы провести то же самое ограничение. InnoDB
препятствует удалению последнего индекса, который может провести
особое справочное ограничение.1554
SQLSTATE: HY000
(ER_WARN_DEPRECATED_SYNTAX_WITH_VER
)
1556
SQLSTATE: HY000
(ER_CANT_LOCK_LOG_TABLE
)
1557
SQLSTATE: 23000
(ER_FOREIGN_DUPLICATE_KEY_OLD_UNUSED
)
1558
SQLSTATE: HY000
(ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE
)
1559
SQLSTATE: HY000
(ER_TEMP_TABLE_PREVENTS_SWITCH_OUT_OF_RBR
)
1560
SQLSTATE: HY000
(ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_FORMAT
)
1562
SQLSTATE: HY000
(ER_PARTITION_NO_TEMPORARY
)
1563
SQLSTATE: HY000
(ER_PARTITION_CONST_DOMAIN_ERROR
)
1564
SQLSTATE: HY000
(ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
)
1565
SQLSTATE: HY000
(ER_DDL_LOG_ERROR
)
1566
SQLSTATE: HY000
(ER_NULL_IN_VALUES_LESS_THAN
)
1567
SQLSTATE: HY000
(ER_WRONG_PARTITION_NAME
)
1568
SQLSTATE: 25001
(ER_CANT_CHANGE_TX_CHARACTERISTICS
)
1569
SQLSTATE: HY000
(ER_DUP_ENTRY_AUTOINCREMENT_CASE
)
1571
SQLSTATE: HY000
(ER_EVENT_SET_VAR_ERROR
)
1572
SQLSTATE: HY000
(ER_PARTITION_MERGE_ERROR
)
1575
SQLSTATE: HY000
(ER_BASE64_DECODE_ERROR
)
1576
SQLSTATE: HY000
(ER_EVENT_RECURSION_FORBIDDEN
)
1578
SQLSTATE: HY000
(ER_ONLY_INTEGERS_ALLOWED
)
1579
SQLSTATE: HY000
(ER_UNSUPORTED_LOG_ENGINE
)
1580
SQLSTATE: HY000
(ER_BAD_LOG_STATEMENT
)
1581
SQLSTATE: HY000
(ER_CANT_RENAME_LOG_TABLE
)
1582
SQLSTATE: 42000
(ER_WRONG_PARAMCOUNT_TO_NATIVE_FCT
)
1583
SQLSTATE: 42000
(ER_WRONG_PARAMETERS_TO_NATIVE_FCT
)
1584
SQLSTATE: 42000
(ER_WRONG_PARAMETERS_TO_STORED_FCT
)
1585
SQLSTATE: HY000
(ER_NATIVE_FCT_NAME_COLLISION
)
1586
SQLSTATE: 23000
(ER_DUP_ENTRY_WITH_KEY_NAME
)
ER_DUP_ENTRY
.
1587
SQLSTATE: HY000
(ER_BINLOG_PURGE_EMFILE
)
1588
SQLSTATE: HY000
(ER_EVENT_CANNOT_CREATE_IN_THE_PAST
)
1589
SQLSTATE: HY000
(ER_EVENT_CANNOT_ALTER_IN_THE_PAST
)
1590
SQLSTATE: HY000
(ER_SLAVE_INCIDENT
)
1591
SQLSTATE: HY000
(ER_NO_PARTITION_FOR_GIVEN_VALUE_SILENT
)
1592
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_STATEMENT
)
1593
SQLSTATE: HY000
(ER_SLAVE_FATAL_ERROR
)
1594
SQLSTATE: HY000
(ER_SLAVE_RELAY_LOG_READ_FAILURE
)
1595
SQLSTATE: HY000
(ER_SLAVE_RELAY_LOG_WRITE_FAILURE
)
1596
SQLSTATE: HY000
(ER_SLAVE_CREATE_EVENT_FAILURE
)
1597
SQLSTATE: HY000
(ER_SLAVE_MASTER_COM_FAILURE
)
1598
SQLSTATE: HY000
(ER_BINLOG_LOGGING_IMPOSSIBLE
)
1599
SQLSTATE: HY000
(ER_VIEW_NO_CREATION_CTX
)
1600
SQLSTATE: HY000
(ER_VIEW_INVALID_CREATION_CTX
)
1602
SQLSTATE: HY000
(ER_TRG_CORRUPTED_FILE
)
1603
SQLSTATE: HY000
(ER_TRG_NO_CREATION_CTX
)
1604
SQLSTATE: HY000
(ER_TRG_INVALID_CREATION_CTX
)
1605
SQLSTATE: HY000
(ER_EVENT_INVALID_CREATION_CTX
)
1606
SQLSTATE: HY000
(ER_TRG_CANT_OPEN_TABLE
)
1609
SQLSTATE: HY000
(ER_NO_FORMAT_DESCRIPTION_EVENT_BEFORE_BINLOG_STATEMENT
)
1610
SQLSTATE: HY000
(ER_SLAVE_CORRUPT_EVENT
)
1612
SQLSTATE: HY000
(ER_LOG_PURGE_NO_FILE
)
1613
SQLSTATE: XA106
(ER_XA_RBTIMEOUT
)
1614
SQLSTATE: XA102
(ER_XA_RBDEADLOCK
)
1615
SQLSTATE: HY000
(ER_NEED_REPREPARE
)
1617
SQLSTATE: HY000
(WARN_NO_MASTER_INFO
)
1618
SQLSTATE: HY000
(WARN_OPTION_IGNORED
)
1619
SQLSTATE: HY000
(ER_PLUGIN_DELETE_BUILTIN
)
1620
SQLSTATE: HY000
(WARN_PLUGIN_BUSY
)
1621
SQLSTATE: HY000
(ER_VARIABLE_IS_READONLY
)
1622
SQLSTATE: HY000
(ER_WARN_ENGINE_TRANSACTION_ROLLBACK
)
1623
SQLSTATE: HY000
(ER_SLAVE_HEARTBEAT_FAILURE
)
1624
SQLSTATE: HY000
(ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE
)
1625
SQLSTATE: HY000
(ER_NDB_REPLICATION_SCHEMA_ERROR
)
1626
SQLSTATE: HY000
(ER_CONFLICT_FN_PARSE_ERROR
)
1627
SQLSTATE: HY000
(ER_EXCEPTIONS_WRITE_ERROR
)
1628
SQLSTATE: HY000
(ER_TOO_LONG_TABLE_COMMENT
)
1629
SQLSTATE: HY000
(ER_TOO_LONG_FIELD_COMMENT
)
1630
SQLSTATE: 42000
(ER_FUNC_INEXISTENT_NAME_COLLISION
)
1631
SQLSTATE: HY000
(ER_DATABASE_NAME
)
1632
SQLSTATE: HY000
(ER_TABLE_NAME
)
1633
SQLSTATE: HY000
(ER_PARTITION_NAME
)
1634
SQLSTATE: HY000
(ER_SUBPARTITION_NAME
)
1635
SQLSTATE: HY000
(ER_TEMPORARY_NAME
)
1636
SQLSTATE: HY000
(ER_RENAMED_NAME
)
1637
SQLSTATE: HY000
(ER_TOO_MANY_CONCURRENT_TRXS
)
1638
SQLSTATE: HY000
(WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED
)
1639
SQLSTATE: HY000
(ER_DEBUG_SYNC_TIMEOUT
)
1640
SQLSTATE: HY000
(ER_DEBUG_SYNC_HIT_LIMIT
)
1641
SQLSTATE: 42000
(ER_DUP_SIGNAL_SET
)
1642
SQLSTATE: 01000
(ER_SIGNAL_WARN
)
1643
SQLSTATE: 02000
(ER_SIGNAL_NOT_FOUND
)
1644
SQLSTATE: HY000
(ER_SIGNAL_EXCEPTION
)
1645
SQLSTATE: 0K000
(ER_RESIGNAL_WITHOUT_ACTIVE_HANDLER
)
1646
SQLSTATE: HY000
(ER_SIGNAL_BAD_CONDITION_TYPE
)
1647
SQLSTATE: HY000
(WARN_COND_ITEM_TRUNCATED
)
1648
SQLSTATE: HY000
(ER_COND_ITEM_TOO_LONG
)
1649
SQLSTATE: HY000
(ER_UNKNOWN_LOCALE
)
1650
SQLSTATE: HY000
(ER_SLAVE_IGNORE_SERVER_IDS
)
1651
SQLSTATE: HY000
(ER_QUERY_CACHE_DISABLED
)
1652
SQLSTATE: HY000
(ER_SAME_NAME_PARTITION_FIELD
)
1653
SQLSTATE: HY000
(ER_PARTITION_COLUMN_LIST_ERROR
)
1654
SQLSTATE: HY000
(ER_WRONG_TYPE_COLUMN_VALUE_ERROR
)
1655
SQLSTATE: HY000
(ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR
)
1656
SQLSTATE: HY000
(ER_MAXVALUE_IN_VALUES_IN
)
1657
SQLSTATE: HY000
(ER_TOO_MANY_VALUES_ERROR
)
1658
SQLSTATE: HY000
(ER_ROW_SINGLE_PARTITION_FIELD_ERROR
)
1659
SQLSTATE: HY000
(ER_FIELD_TYPE_NOT_ALLOWED_AS_PARTITION_FIELD
)
1660
SQLSTATE: HY000
(ER_PARTITION_FIELDS_TOO_LONG
)
1661
SQLSTATE: HY000
(ER_BINLOG_ROW_ENGINE_AND_STMT_ENGINE
)
1662
SQLSTATE: HY000
(ER_BINLOG_ROW_MODE_AND_STMT_ENGINE
)
1663
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_AND_STMT_ENGINE
)
1664
SQLSTATE: HY000
(ER_BINLOG_ROW_INJECTION_AND_STMT_ENGINE
)
1665
SQLSTATE: HY000
(ER_BINLOG_STMT_MODE_AND_ROW_ENGINE
)
1666
SQLSTATE: HY000
(ER_BINLOG_ROW_INJECTION_AND_STMT_MODE
)
1667
SQLSTATE: HY000
(ER_BINLOG_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE
)
1668
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_LIMIT
)
1670
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_SYSTEM_TABLE
)
1671
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_AUTOINC_COLUMNS
)
1672
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_UDF
)
1673
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_SYSTEM_VARIABLE
)
1674
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_SYSTEM_FUNCTION
)
1675
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_NONTRANS_AFTER_TRANS
)
1676
SQLSTATE: HY000
(ER_MESSAGE_AND_STATEMENT
)
1677
SQLSTATE: HY000
(ER_SLAVE_CONVERSION_FAILED
)
1678
SQLSTATE: HY000
(ER_SLAVE_CANT_CREATE_CONVERSION
)
1679
SQLSTATE: HY000
(ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_BINLOG_FORMAT
)
1680
SQLSTATE: HY000
(ER_PATH_LENGTH
)
1681
SQLSTATE: HY000
(ER_WARN_DEPRECATED_SYNTAX_NO_REPLACEMENT
)
1682
SQLSTATE: HY000
(ER_WRONG_NATIVE_TABLE_STRUCTURE
)
1683
SQLSTATE: HY000
(ER_WRONG_PERFSCHEMA_USAGE
)
1684
SQLSTATE: HY000
(ER_WARN_I_S_SKIPPED_TABLE
)
1685
SQLSTATE: HY000
(ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_BINLOG_DIRECT
)
1686
SQLSTATE: HY000
(ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_DIRECT
)
1687
SQLSTATE: 42000
(ER_SPATIAL_MUST_HAVE_GEOM_COL
)
1688
SQLSTATE: HY000
(ER_TOO_LONG_INDEX_COMMENT
)
1689
SQLSTATE: HY000
(ER_LOCK_ABORTED
)
1690
SQLSTATE: 22003
(ER_DATA_OUT_OF_RANGE
)
1691
SQLSTATE: HY000
(ER_WRONG_SPVAR_TYPE_IN_LIMIT
)
1692
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE
)
1693
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_MIXED_STATEMENT
)
1694
SQLSTATE: HY000
(ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_SQL_LOG_BIN
)
1695
SQLSTATE: HY000
(ER_STORED_FUNCTION_PREVENTS_SWITCH_SQL_LOG_BIN
)
1696
SQLSTATE: HY000
(ER_FAILED_READ_FROM_PAR_FILE
)
1697
SQLSTATE: HY000
(ER_VALUES_IS_NOT_INT_TYPE_ERROR
)
1698
SQLSTATE: 28000
(ER_ACCESS_DENIED_NO_PASSWORD_ERROR
)
1699
SQLSTATE: HY000
(ER_SET_PASSWORD_AUTH_PLUGIN
)
1701
SQLSTATE: 42000
(ER_TRUNCATE_ILLEGAL_FK
)
1702
SQLSTATE: HY000
(ER_PLUGIN_IS_PERMANENT
)
1703
SQLSTATE: HY000
(ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN
)
1704
SQLSTATE: HY000
(ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX
)
1705
SQLSTATE: HY000
(ER_STMT_CACHE_FULL
)
1706
SQLSTATE: HY000
(ER_MULTI_UPDATE_KEY_CONFLICT
)
1707
SQLSTATE: HY000
(ER_TABLE_NEEDS_REBUILD
)
1708
SQLSTATE: HY000
(WARN_OPTION_BELOW_LIMIT
)
1709
SQLSTATE: HY000
(ER_INDEX_COLUMN_TOO_LONG
)
1710
SQLSTATE: HY000
(ER_ERROR_IN_TRIGGER_BODY
)
1711
SQLSTATE: HY000
(ER_ERROR_IN_UNKNOWN_TRIGGER_BODY
)
1712
SQLSTATE: HY000
(ER_INDEX_CORRUPT
)
1713
SQLSTATE: HY000
(ER_UNDO_RECORD_TOO_BIG
)
1714
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_INSERT_IGNORE_SELECT
)
1715
SQLSTATE: HY000
(
ER_BINLOG_UNSAFE_INSERT_SELECT_UPDATE
)
1716
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_REPLACE_SELECT
)
1717
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_CREATE_IGNORE_SELECT
)
1718
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_CREATE_REPLACE_SELECT
)
1719
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_UPDATE_IGNORE
)
1720
SQLSTATE: HY000
(ER_PLUGIN_NO_UNINSTALL
)
1721
SQLSTATE: HY000
(ER_PLUGIN_NO_INSTALL
)
1722
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_WRITE_AUTOINC_SELECT
)
1723
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_CREATE_SELECT_AUTOINC
)
1724
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_INSERT_TWO_KEYS
)
1725
SQLSTATE: HY000
(ER_TABLE_IN_FK_CHECK
)
1726
SQLSTATE: HY000
(ER_UNSUPPORTED_ENGINE
)
1727
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_AUTOINC_NOT_FIRST
)
1728
SQLSTATE: HY000
(ER_CANNOT_LOAD_FROM_TABLE_V2
)
1729
SQLSTATE: HY000
(ER_MASTER_DELAY_VALUE_OUT_OF_RANGE
)
1730
SQLSTATE: HY000
(ER_ONLY_FD_AND_RBR_EVENTS_ALLOWED_IN_BINLOG_STATEMENT
)
1731
SQLSTATE: HY000
(ER_PARTITION_EXCHANGE_DIFFERENT_OPTION
)
1732
SQLSTATE: HY000
(ER_PARTITION_EXCHANGE_PART_TABLE
)
1733
SQLSTATE: HY000
(ER_PARTITION_EXCHANGE_TEMP_TABLE
)
1734
SQLSTATE: HY000
(ER_PARTITION_INSTEAD_OF_SUBPARTITION
)
1735
SQLSTATE: HY000
(ER_UNKNOWN_PARTITION
)
1736
SQLSTATE: HY000
(ER_TABLES_DIFFERENT_METADATA
)
1737
SQLSTATE: HY000
(ER_ROW_DOES_NOT_MATCH_PARTITION
)
1738
SQLSTATE: HY000
(ER_BINLOG_CACHE_SIZE_GREATER_THAN_MAX
)
1739
SQLSTATE: HY000
(ER_WARN_INDEX_NOT_APPLICABLE
)
1740
SQLSTATE: HY000
(ER_PARTITION_EXCHANGE_FOREIGN_KEY
)
1742
SQLSTATE: HY000
(ER_RPL_INFO_DATA_TOO_LONG
)
1743
SQLSTATE: HY000
(ER_NETWORK_READ_EVENT_CHECKSUM_FAILURE
)
1745
SQLSTATE: HY000
(ER_BINLOG_STMT_CACHE_SIZE_GREATER_THAN_MAX
)
1746
SQLSTATE: HY000
(ER_CANT_UPDATE_TABLE_IN_CREATE_TABLE_SELECT
)
1747
SQLSTATE: HY000
(ER_PARTITION_CLAUSE_ON_NONPARTITIONED
)
1748
SQLSTATE: HY000
(ER_ROW_DOES_NOT_MATCH_GIVEN_PARTITION_SET
)
1750
SQLSTATE: HY000
(ER_CHANGE_RPL_INFO_REPOSITORY_FAILURE
)
1751
SQLSTATE: HY000
(ER_WARNING_NOT_COMPLETE_ROLLBACK_WITH_CREATED_TEMP_TABLE
)
1752
SQLSTATE: HY000
(ER_WARNING_NOT_COMPLETE_ROLLBACK_WITH_DROPPED_TEMP_TABLE
)
1753
SQLSTATE: HY000
(ER_MTS_FEATURE_IS_NOT_SUPPORTED
)
1754
SQLSTATE: HY000
(ER_MTS_UPDATED_DBS_GREATER_MAX
)
1755
SQLSTATE: HY000
(ER_MTS_CANT_PARALLEL
)
1756
SQLSTATE: HY000
(ER_MTS_INCONSISTENT_DATA
)
1757
SQLSTATE: HY000
(ER_FULLTEXT_NOT_SUPPORTED_WITH_PARTITIONING
)
1758
SQLSTATE: 35000
(ER_DA_INVALID_CONDITION_NUMBER
)
1759
SQLSTATE: HY000
(ER_INSECURE_PLAIN_TEXT
)
1760
SQLSTATE: HY000
(ER_INSECURE_CHANGE_MASTER
)
1761
SQLSTATE: 23000
(ER_FOREIGN_DUPLICATE_KEY_WITH_CHILD_INFO
)
1762
SQLSTATE: 23000
(ER_FOREIGN_DUPLICATE_KEY_WITHOUT_CHILD_INFO
)
1763
SQLSTATE: HY000
(ER_SQLTHREAD_WITH_SECURE_SLAVE
)
1764
SQLSTATE: HY000
(ER_TABLE_HAS_NO_FT
)
1765
SQLSTATE: HY000
(ER_VARIABLE_NOT_SETTABLE_IN_SF_OR_TRIGGER
)
1766
SQLSTATE: HY000
(ER_VARIABLE_NOT_SETTABLE_IN_TRANSACTION
)
1769
SQLSTATE: HY000
(ER_SET_STATEMENT_CANNOT_INVOKE_FUNCTION
)
1770
SQLSTATE: HY000
(ER_GTID_NEXT_CANT_BE_AUTOMATIC_IF_GTID_NEXT_LIST_IS_NON_NULL
)
1772
SQLSTATE: HY000
(ER_MALFORMED_GTID_SET_SPECIFICATION
)
1773
SQLSTATE: HY000
(ER_MALFORMED_GTID_SET_ENCODING
)
1774
SQLSTATE: HY000
(ER_MALFORMED_GTID_SPECIFICATION
)
1775
SQLSTATE: HY000
(ER_GNO_EXHAUSTED
)
1776
SQLSTATE: HY000
(ER_BAD_SLAVE_AUTO_POSITION
)
1777
SQLSTATE: HY000
(ER_AUTO_POSITION_REQUIRES_GTID_MODE_NOT_OFF
)
1778
SQLSTATE: HY000
(ER_CANT_DO_IMPLICIT_COMMIT_IN_TRX_WHEN_GTID_NEXT_IS_SET
)
1779
SQLSTATE: HY000
(ER_GTID_MODE_ON_REQUIRES_ENFORCE_GTID_CONSISTENCY_ON
)
1781
SQLSTATE: HY000
(ER_CANT_SET_GTID_NEXT_TO_GTID_WHEN_GTID_MODE_IS_OFF
)
1782
SQLSTATE: HY000
(ER_CANT_SET_GTID_NEXT_TO_ANONYMOUS_WHEN_GTID_MODE_IS_ON
)
1783
SQLSTATE: HY000
(ER_CANT_SET_GTID_NEXT_LIST_TO_NON_NULL_WHEN_GTID_MODE_IS_OFF
)
1785
SQLSTATE: HY000
(ER_GTID_UNSAFE_NON_TRANSACTIONAL_TABLE
)
1786
SQLSTATE: HY000
(ER_GTID_UNSAFE_CREATE_SELECT
)
1787
SQLSTATE: HY000
(ER_GTID_UNSAFE_CREATE_DROP_TEMPORARY_TABLE_IN_TRANSACTION
)
1788
SQLSTATE: HY000
(ER_GTID_MODE_CAN_ONLY_CHANGE_ONE_STEP_AT_A_TIME
)
1789
SQLSTATE: HY000
(ER_MASTER_HAS_PURGED_REQUIRED_GTIDS
)
1790
SQLSTATE: HY000
(ER_CANT_SET_GTID_NEXT_WHEN_OWNING_GTID
)
1791
SQLSTATE: HY000
(ER_UNKNOWN_EXPLAIN_FORMAT
)
1792
SQLSTATE: 25006
(ER_CANT_EXECUTE_IN_READ_ONLY_TRANSACTION
)
1793
SQLSTATE: HY000
(ER_TOO_LONG_TABLE_PARTITION_COMMENT
)
1794
SQLSTATE: HY000
(ER_SLAVE_CONFIGURATION
)
1795
SQLSTATE: HY000
(ER_INNODB_FT_LIMIT
)
1796
SQLSTATE: HY000
(ER_INNODB_NO_FT_TEMP_TABLE
)
1797
SQLSTATE: HY000
(ER_INNODB_FT_WRONG_DOCID_COLUMN
)
1798
SQLSTATE: HY000
(ER_INNODB_FT_WRONG_DOCID_INDEX
)
1799
SQLSTATE: HY000
(ER_INNODB_ONLINE_LOG_TOO_BIG
)
1800
SQLSTATE: HY000
(ER_UNKNOWN_ALTER_ALGORITHM
)
1801
SQLSTATE: HY000
(ER_UNKNOWN_ALTER_LOCK
)
1802
SQLSTATE: HY000
(ER_MTS_CHANGE_MASTER_CANT_RUN_WITH_GAPS
)
1803
SQLSTATE: HY000
(ER_MTS_RECOVERY_FAILURE
)
1804
SQLSTATE: HY000
(ER_MTS_RESET_WORKERS
)
1805
SQLSTATE: HY000
(ER_COL_COUNT_DOESNT_MATCH_CORRUPTED_V2
)
1806
SQLSTATE: HY000
(ER_SLAVE_SILENT_RETRY_TRANSACTION
)
1807
SQLSTATE: HY000
(ER_DISCARD_FK_CHECKS_RUNNING
)
1808
SQLSTATE: HY000
(ER_TABLE_SCHEMA_MISMATCH
)
1809
SQLSTATE: HY000
(ER_TABLE_IN_SYSTEM_TABLESPACE
)
1810
SQLSTATE: HY000
(ER_IO_READ_ERROR
)
1811
SQLSTATE: HY000
(ER_IO_WRITE_ERROR
)
1812
SQLSTATE: HY000
(ER_TABLESPACE_MISSING
)
1813
SQLSTATE: HY000
(ER_TABLESPACE_EXISTS
)
1814
SQLSTATE: HY000
(ER_TABLESPACE_DISCARDED
)
1815
SQLSTATE: HY000
(ER_INTERNAL_ERROR
)
1816
SQLSTATE: HY000
(ER_INNODB_IMPORT_ERROR
)
1817
SQLSTATE: HY000
(ER_INNODB_INDEX_CORRUPT
)
1818
SQLSTATE: HY000
(ER_INVALID_YEAR_COLUMN_LENGTH
)
1819
SQLSTATE: HY000
(ER_NOT_VALID_PASSWORD
)
1820
SQLSTATE: HY000
(ER_MUST_CHANGE_PASSWORD
)
1821
SQLSTATE: HY000
(ER_FK_NO_INDEX_CHILD
)
1822
SQLSTATE: HY000
(ER_FK_NO_INDEX_PARENT
)
1823
SQLSTATE: HY000
(ER_FK_FAIL_ADD_SYSTEM
)
1824
SQLSTATE: HY000
(ER_FK_CANNOT_OPEN_PARENT
)
1825
SQLSTATE: HY000
(ER_FK_INCORRECT_OPTION
)
1826
SQLSTATE: HY000
(ER_FK_DUP_NAME
)
1827
SQLSTATE: HY000
(ER_PASSWORD_FORMAT
)
1828
SQLSTATE: HY000
(ER_FK_COLUMN_CANNOT_DROP
)
1829
SQLSTATE: HY000
(ER_FK_COLUMN_CANNOT_DROP_CHILD
)
1830
SQLSTATE: HY000
(ER_FK_COLUMN_NOT_NULL
)
1831
SQLSTATE: HY000
(ER_DUP_INDEX
)
1832
SQLSTATE: HY000
(ER_FK_COLUMN_CANNOT_CHANGE
)
1833
SQLSTATE: HY000
(ER_FK_COLUMN_CANNOT_CHANGE_CHILD
)
1835
SQLSTATE: HY000
(ER_MALFORMED_PACKET
)
1836
SQLSTATE: HY000
(ER_READ_ONLY_MODE
)
1837
SQLSTATE: HY000
(ER_GTID_NEXT_TYPE_UNDEFINED_GROUP
)
1838
SQLSTATE: HY000
(ER_VARIABLE_NOT_SETTABLE_IN_SP
)
1840
SQLSTATE: HY000
(ER_CANT_SET_GTID_PURGED_WHEN_GTID_EXECUTED_IS_NOT_EMPTY
)
1841
SQLSTATE: HY000
(ER_CANT_SET_GTID_PURGED_WHEN_OWNED_GTIDS_IS_NOT_EMPTY
)
1842
SQLSTATE: HY000
(ER_GTID_PURGED_WAS_CHANGED
)
1843
SQLSTATE: HY000
(ER_GTID_EXECUTED_WAS_CHANGED
)
1844
SQLSTATE: HY000
(ER_BINLOG_STMT_MODE_AND_NO_REPL_TABLES
)
1845
SQLSTATE: 0A000
(ER_ALTER_OPERATION_NOT_SUPPORTED
)
1846
SQLSTATE: 0A000
(ER_ALTER_OPERATION_NOT_SUPPORTED_REASON
)
1847
SQLSTATE: HY000
(ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_COPY
)
1848
SQLSTATE: HY000
(ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_PARTITION
)
1849
SQLSTATE: HY000
(
ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FK_RENAME
)
1850
SQLSTATE: HY000
(ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_COLUMN_TYPE
)
1851
SQLSTATE: HY000
(
ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FK_CHECK
)
1853
SQLSTATE: HY000
(
ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_NOPK
)
1854
SQLSTATE: HY000
(
ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_AUTOINC
)
1855
SQLSTATE: HY000
(
ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_HIDDEN_FTS
)
1856
SQLSTATE: HY000
(
ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_CHANGE_FTS
)
1857
SQLSTATE: HY000
(
ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FTS
)
1858
SQLSTATE: HY000
(
ER_SQL_SLAVE_SKIP_COUNTER_NOT_SETTABLE_IN_GTID_MODE
)
1859
SQLSTATE: 23000
(
ER_DUP_UNKNOWN_IN_INDEX
)
1860
SQLSTATE: HY000
(
ER_IDENT_CAUSES_TOO_LONG_PATH
)
1861
SQLSTATE: HY000
(
ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_NOT_NULL
)
1862
SQLSTATE: HY000
(
ER_MUST_CHANGE_PASSWORD_LOGIN
)
1863
SQLSTATE: HY000
(ER_ROW_IN_WRONG_PARTITION
)
1864
SQLSTATE: HY000
(ER_MTS_EVENT_BIGGER_PENDING_JOBS_SIZE_MAX
)
1866
SQLSTATE: HY000
(ER_BINLOG_LOGICAL_CORRUPTION
)
1867
SQLSTATE: HY000
(ER_WARN_PURGE_LOG_IN_USE
)
1868
SQLSTATE: HY000
(ER_WARN_PURGE_LOG_IS_ACTIVE
)
1869
SQLSTATE: HY000
(ER_AUTO_INCREMENT_CONFLICT
)
1870
SQLSTATE: HY000
(WARN_ON_BLOCKHOLE_IN_RBR
)
1871
SQLSTATE: HY000
(ER_SLAVE_MI_INIT_REPOSITORY
)
1872
SQLSTATE: HY000
(ER_SLAVE_RLI_INIT_REPOSITORY
)
1873
SQLSTATE: 28000
(ER_ACCESS_DENIED_CHANGE_USER_ERROR
)
1874
SQLSTATE: HY000
(ER_INNODB_READ_ONLY
)
1875
SQLSTATE: HY000
(ER_STOP_SLAVE_SQL_THREAD_TIMEOUT
)
1876
SQLSTATE: HY000
(ER_STOP_SLAVE_IO_THREAD_TIMEOUT
)
1877
SQLSTATE: HY000
(ER_TABLE_CORRUPT
)
1878
SQLSTATE: HY000
(ER_TEMP_FILE_WRITE_FAILURE
)
1879
SQLSTATE: HY000
(ER_INNODB_FT_AUX_NOT_HEX_ID
)
1880
SQLSTATE: HY000
(ER_OLD_TEMPORALS_UPGRADED
)
1881
SQLSTATE: HY000
(ER_INNODB_FORCED_RECOVERY
)
1882
SQLSTATE: HY000
(ER_AES_INVALID_IV
)
1883
SQLSTATE: HY000
(ER_PLUGIN_CANNOT_BE_UNINSTALLED
)
1884
SQLSTATE: HY000
(ER_GTID_UNSAFE_BINLOG_SPLITTABLE_STATEMENT_AND_GTID_GROUP
)
1885
SQLSTATE: HY000
(ER_SLAVE_HAS_MORE_GTIDS_THAN_MASTER
)
3000
SQLSTATE: HY000
(ER_FILE_CORRUPT
)
3001
SQLSTATE: HY000
(ER_ERROR_ON_MASTER
)
3002
SQLSTATE: HY000
(ER_INCONSISTENT_ERROR
)
3003
SQLSTATE: HY000
(ER_STORAGE_ENGINE_NOT_LOADED
)
3004
SQLSTATE: 0Z002
(ER_GET_STACKED_DA_WITHOUT_ACTIVE_HANDLER
)
3005
SQLSTATE: HY000
(ER_WARN_LEGACY_SYNTAX_CONVERTED
)
3006
SQLSTATE: HY000
(ER_BINLOG_UNSAFE_FULLTEXT_PLUGIN
)
3007
SQLSTATE: HY000
(ER_CANNOT_DISCARD_TEMPORARY_TABLE
)
3008
SQLSTATE: HY000
(ER_FK_DEPTH_EXCEEDED
)
3009
SQLSTATE: HY000
(ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE_V2
)
3010
SQLSTATE: HY000
(ER_WARN_TRIGGER_DOESNT_HAVE_CREATED
)
3011
SQLSTATE: HY000
(ER_REFERENCED_TRG_DOES_NOT_EXIST
)
3012
SQLSTATE: HY000
(ER_EXPLAIN_NOT_SUPPORTED
)
3013
SQLSTATE: HY000
(ER_INVALID_FIELD_SIZE
)
3014
SQLSTATE: HY000
(ER_MISSING_HA_CREATE_OPTION
)
3015
SQLSTATE: HY000
(ER_ENGINE_OUT_OF_MEMORY
)
3016
SQLSTATE: HY000
(ER_PASSWORD_EXPIRE_ANONYMOUS_USER
)
3017
SQLSTATE: HY000
(ER_SLAVE_SQL_THREAD_MUST_STOP
)
3018
SQLSTATE: HY000
(ER_NO_FT_MATERIALIZED_SUBQUERY
)
3019
SQLSTATE: HY000
(ER_INNODB_UNDO_LOG_FULL
)
3020
SQLSTATE: 2201E
(ER_INVALID_ARGUMENT_FOR_LOGARITHM
)
3021
SQLSTATE: HY000
(ER_SLAVE_CHANNEL_IO_THREAD_MUST_STOP
)
3022
SQLSTATE: HY000
(ER_WARN_OPEN_TEMP_TABLES_MUST_BE_ZERO
)
3023
SQLSTATE: HY000
(ER_WARN_ONLY_MASTER_LOG_FILE_NO_POS
)
3024
SQLSTATE: HY000
(ER_QUERY_TIMEOUT
)
3025
SQLSTATE: HY000
(ER_NON_RO_SELECT_DISABLE_TIMER
)
3026
SQLSTATE: HY000
(ER_DUP_LIST_ENTRY
)
3028
SQLSTATE: HY000
(ER_AGGREGATE_ORDER_FOR_UNION
)
3029
SQLSTATE: HY000
(ER_AGGREGATE_ORDER_NON_AGG_QUERY
)
3030
SQLSTATE: HY000
(ER_SLAVE_WORKER_STOPPED_PREVIOUS_THD_ERROR
)
3031
SQLSTATE: HY000
(ER_DONT_SUPPORT_SLAVE_PRESERVE_COMMIT_ORDER
)
3032
SQLSTATE: HY000
(ER_SERVER_OFFLINE_MODE
)
3033
SQLSTATE: HY000
(ER_GIS_DIFFERENT_SRIDS
)
3034
SQLSTATE: HY000
(ER_GIS_UNSUPPORTED_ARGUMENT
)
3035
SQLSTATE: HY000
(ER_GIS_UNKNOWN_ERROR
)
3036
SQLSTATE: HY000
(ER_GIS_UNKNOWN_EXCEPTION
)
3037
SQLSTATE: 22023
(ER_GIS_INVALID_DATA
)
3038
SQLSTATE: HY000
(ER_BOOST_GEOMETRY_EMPTY_INPUT_EXCEPTION
)
3039
SQLSTATE: HY000
(ER_BOOST_GEOMETRY_CENTROID_EXCEPTION
)
3040
SQLSTATE: HY000
(ER_BOOST_GEOMETRY_OVERLAY_INVALID_INPUT_EXCEPTION
)
3041
SQLSTATE: HY000
(ER_BOOST_GEOMETRY_TURN_INFO_EXCEPTION
)
3042
SQLSTATE: HY000
(ER_BOOST_GEOMETRY_SELF_INTERSECTION_POINT_EXCEPTION
)
3043
SQLSTATE: HY000
(ER_BOOST_GEOMETRY_UNKNOWN_EXCEPTION
)
3044
SQLSTATE: HY000
(ER_STD_BAD_ALLOC_ERROR
)
3045
SQLSTATE: HY000
(ER_STD_DOMAIN_ERROR
)
3046
SQLSTATE: HY000
(ER_STD_LENGTH_ERROR
)
3047
SQLSTATE: HY000
(ER_STD_INVALID_ARGUMENT
)
3048
SQLSTATE: HY000
(ER_STD_OUT_OF_RANGE_ERROR
)
3049
SQLSTATE: HY000
(ER_STD_OVERFLOW_ERROR
)
3050
SQLSTATE: HY000
(ER_STD_RANGE_ERROR
)
3051
SQLSTATE: HY000
(ER_STD_UNDERFLOW_ERROR
)
3052
SQLSTATE: HY000
(ER_STD_LOGIC_ERROR
)
3053
SQLSTATE: HY000
(ER_STD_RUNTIME_ERROR
)
3054
SQLSTATE: HY000
(ER_STD_UNKNOWN_EXCEPTION
)
3055
SQLSTATE: HY000
(ER_GIS_DATA_WRONG_ENDIANESS
)
3056
SQLSTATE: HY000
(ER_CHANGE_MASTER_PASSWORD_LENGTH
)
3057
SQLSTATE: 42000
(ER_USER_LOCK_WRONG_NAME
)
3058
SQLSTATE: HY000
(ER_USER_LOCK_DEADLOCK
)
GET_LOCK
.
3059
SQLSTATE: HY000
(ER_REPLACE_INACCESSIBLE_ROWS
)
3060
SQLSTATE: HY000
(ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_GIS
)
3061
SQLSTATE: 42000
(ER_ILLEGAL_USER_VAR
)
3062
SQLSTATE: HY000
(ER_GTID_MODE_OFF
)
3064
SQLSTATE: HY000
(ER_INCORRECT_TYPE
)
3065
SQLSTATE: HY000
(ER_FIELD_IN_ORDER_NOT_SELECT
)
3066
SQLSTATE: HY000
(ER_AGGREGATE_IN_ORDER_NOT_SELECT
)
3067
SQLSTATE: HY000
(ER_INVALID_RPL_WILD_TABLE_FILTER_PATTERN
)
3068
SQLSTATE: 08S01
(ER_NET_OK_PACKET_TOO_LARGE
)
3069
SQLSTATE: HY000
(ER_INVALID_JSON_DATA
)
3070
SQLSTATE: HY000
(ER_INVALID_GEOJSON_MISSING_MEMBER
)
3071
SQLSTATE: HY000
(ER_INVALID_GEOJSON_WRONG_TYPE
)
3072
SQLSTATE: HY000
(ER_INVALID_GEOJSON_UNSPECIFIED
)
3073
SQLSTATE: HY000
(ER_DIMENSION_UNSUPPORTED
)
3074
SQLSTATE: HY000
(ER_SLAVE_CHANNEL_DOES_NOT_EXIST
)
3076
SQLSTATE: HY000
(ER_SLAVE_CHANNEL_NAME_INVALID_OR_TOO_LONG
)
3077
SQLSTATE: HY000
(ER_SLAVE_NEW_CHANNEL_WRONG_REPOSITORY
)
3079
SQLSTATE: HY000
(ER_SLAVE_MULTIPLE_CHANNELS_CMD
)
3080
SQLSTATE: HY000
(ER_SLAVE_MAX_CHANNELS_EXCEEDED
)
3081
SQLSTATE: HY000
(ER_SLAVE_CHANNEL_MUST_STOP
)
3082
SQLSTATE: HY000
(ER_SLAVE_CHANNEL_NOT_RUNNING
)
3083
SQLSTATE: HY000
(ER_SLAVE_CHANNEL_WAS_RUNNING
)
3084
SQLSTATE: HY000
(ER_SLAVE_CHANNEL_WAS_NOT_RUNNING
)
3085
SQLSTATE: HY000
(ER_SLAVE_CHANNEL_SQL_THREAD_MUST_STOP
)
3086
SQLSTATE: HY000
(ER_SLAVE_CHANNEL_SQL_SKIP_COUNTER
)
3087
SQLSTATE: HY000
(ER_WRONG_FIELD_WITH_GROUP_V2
)
3088
SQLSTATE: HY000
(ER_MIX_OF_GROUP_FUNC_AND_FIELDS_V2
)
3089
SQLSTATE: HY000
(ER_WARN_DEPRECATED_SYSVAR_UPDATE
)
3090
SQLSTATE: HY000
(ER_WARN_DEPRECATED_SQLMODE
)
3091
SQLSTATE: HY000
(ER_CANNOT_LOG_PARTIAL_DROP_DATABASE_WITH_GTID
)
3092
SQLSTATE: HY000
(ER_GROUP_REPLICATION_CONFIGURATION
)
3093
SQLSTATE: HY000
(ER_GROUP_REPLICATION_RUNNING
)
3094
SQLSTATE: HY000
(ER_GROUP_REPLICATION_APPLIER_INIT_ERROR
)
3095
SQLSTATE: HY000
(ER_GROUP_REPLICATION_STOP_APPLIER_THREAD_TIMEOUT
)
3096
SQLSTATE: HY000
(ER_GROUP_REPLICATION_COMMUNICATION_LAYER_SESSION_ERROR
)
3097
SQLSTATE: HY000
(ER_GROUP_REPLICATION_COMMUNICATION_LAYER_JOIN_ERROR
)
3098
SQLSTATE: HY000
(ER_BEFORE_DML_VALIDATION_ERROR
)
3099
SQLSTATE: HY000
(ER_PREVENTS_VARIABLE_WITHOUT_RBR
)
3100
SQLSTATE: HY000
(ER_RUN_HOOK_ERROR
)
3101
SQLSTATE: HY000
(ER_TRANSACTION_ROLLBACK_DURING_COMMIT
)
3102
SQLSTATE: HY000
(ER_GENERATED_COLUMN_FUNCTION_IS_NOT_ALLOWED
)
3103
SQLSTATE: HY000
(ER_UNSUPPORTED_ALTER_INPLACE_ON_VIRTUAL_COLUMN
)
3104
SQLSTATE: HY000
(ER_WRONG_FK_OPTION_FOR_GENERATED_COLUMN
)
3105
SQLSTATE: HY000
(ER_NON_DEFAULT_VALUE_FOR_GENERATED_COLUMN
)
3106
SQLSTATE: HY000
(ER_UNSUPPORTED_ACTION_ON_GENERATED_COLUMN
)
3107
SQLSTATE: HY000
(
ER_GENERATED_COLUMN_NON_PRIOR
)
3108
SQLSTATE: HY000
(
ER_DEPENDENT_BY_GENERATED_COLUMN
)
3109
SQLSTATE: HY000
(
ER_GENERATED_COLUMN_REF_AUTO_INC
)
3110
SQLSTATE: HY000
(ER_FEATURE_NOT_AVAILABLE
)
3111
SQLSTATE: HY000
(ER_CANT_SET_GTID_MODE
)
3112
SQLSTATE: HY000
(
ER_CANT_USE_AUTO_POSITION_WITH_GTID_MODE_OFF
)
3113
SQLSTATE: HY000
(
ER_CANT_REPLICATE_ANONYMOUS_WITH_AUTO_POSITION
)
3114
SQLSTATE: HY000
(
ER_CANT_REPLICATE_ANONYMOUS_WITH_GTID_MODE_ON
)
3115
SQLSTATE: HY000
(
ER_CANT_REPLICATE_GTID_WITH_GTID_MODE_OFF
)
3116
SQLSTATE: HY000
(
ER_CANT_ENFORCE_GTID_CONSISTENCY_WITH_ONGOING_GTID_VIOLATING_TX
)
ER_CANT_SET_ENFORCE_GTID_CONSISTENCY_ON_WITH_ONGOING_GTID_VIOLATING_TRANSACTIONS
was renamed to
ER_CANT_ENFORCE_GTID_CONSISTENCY_WITH_ONGOING_GTID_VIOLATING_TX
.
3117
SQLSTATE: HY000
(ER_ENFORCE_GTID_CONSISTENCY_WARN_WITH_ONGOING_GTID_VIOLATING_TX
)
ER_SET_ENFORCE_GTID_CONSISTENCY_WARN_WITH_ONGOING_GTID_VIOLATING_TRANSACTIONS
was renamed to
ER_ENFORCE_GTID_CONSISTENCY_WARN_WITH_ONGOING_GTID_VIOLATING_TX
.
3118
SQLSTATE: HY000
(
ER_ACCOUNT_HAS_BEEN_LOCKED
)
CREATE USER ... ACCOUNT LOCK
или
ALTER USER ... ACCOUNT LOCK
.
Администратор может разблокировать через
ALTER USER ... ACCOUNT UNLOCK
.
3119
SQLSTATE: 42000
(
ER_WRONG_TABLESPACE_NAME
)
3120
SQLSTATE: HY000
(ER_TABLESPACE_IS_NOT_EMPTY
)
3121
SQLSTATE: HY000
(ER_WRONG_FILE_NAME
)
3122
SQLSTATE: HY000
(ER_BOOST_GEOMETRY_INCONSISTENT_TURNS_EXCEPTION
)
3123
SQLSTATE: HY000
(ER_WARN_OPTIMIZER_HINT_SYNTAX_ERROR
)
3124
SQLSTATE: HY000
(ER_WARN_BAD_MAX_EXECUTION_TIME
)
3125
SQLSTATE: HY000
(
ER_WARN_UNSUPPORTED_MAX_EXECUTION_TIME
)
MAX_EXECUTION_TIME()
поддержана только
для оператора SELECT
.3126
SQLSTATE: HY000
(
ER_WARN_CONFLICTING_HINT
)
3127
SQLSTATE: HY000
(ER_WARN_UNKNOWN_QB_NAME
)
3128
SQLSTATE: HY000
(ER_UNRESOLVED_HINT_NAME
)
3129
SQLSTATE: HY000
(ER_WARN_ON_MODIFYING_GTID_EXECUTED_TABLE
)
3130
SQLSTATE: HY000
(ER_PLUGGABLE_PROTOCOL_COMMAND_NOT_SUPPORTED
)
3131
SQLSTATE: 42000
(
ER_LOCKING_SERVICE_WRONG_NAME
)
NULL
, пустая строка
или строка длинней 64 символов. Пространство имен и имена блокировки должны
быть не-NULL
, непустыми и не больше, чем 64 символа.3132
SQLSTATE: HY000
(
ER_LOCKING_SERVICE_DEADLOCK
)
3133
SQLSTATE: HY000
(ER_LOCKING_SERVICE_TIMEOUT
)
3134
SQLSTATE: HY000
(ER_GIS_MAX_POINTS_IN_GEOMETRY_OVERFLOWED
)
3135
SQLSTATE: HY000
(ER_SQL_MODE_MERGED
)
3136
SQLSTATE: HY000
(
ER_VTOKEN_PLUGIN_TOKEN_MISMATCH
)
version_tokens_session
в список маркеров, которым сервер
должен соответствовать, но в маркерном списке сервера есть по крайней мере
одно соответствующее маркерное имя, у которого есть значение, отличающееся от
того, чего требует клиент. См.
раздел 6.6.5.3137
SQLSTATE: HY000
(
ER_VTOKEN_PLUGIN_TOKEN_NOT_FOUND
)
version_tokens_session
в список маркеров, которым сервер
должен соответствовать, но маркерный список сервера пропускает по крайней
мере один из этих маркеров. См.
See раздел 6.6.5.3138
SQLSTATE: HY000
(
ER_CANT_SET_VARIABLE_WHEN_OWNING_GTID
)
3139
SQLSTATE: HY000
(ER_SLAVE_CHANNEL_OPERATION_NOT_ALLOWED
)
3140
SQLSTATE: 22032
(ER_INVALID_JSON_TEXT
)
3141
SQLSTATE: 22032
(
ER_INVALID_JSON_TEXT_IN_PARAM
)
3142
SQLSTATE: HY000
(ER_INVALID_JSON_BINARY_DATA
)
3143
SQLSTATE: 42000
(ER_INVALID_JSON_PATH
)
3144
SQLSTATE: 22032
(ER_INVALID_JSON_CHARSET
)
3145
SQLSTATE: 22032
(ER_INVALID_JSON_CHARSET_IN_FUNCTION
)
3146
SQLSTATE: 22032
(ER_INVALID_TYPE_FOR_JSON
)
3147
SQLSTATE: 22032
(ER_INVALID_CAST_TO_JSON
)
3148
SQLSTATE: 42000
(ER_INVALID_JSON_PATH_CHARSET
)
3149
SQLSTATE: 42000
(ER_INVALID_JSON_PATH_WILDCARD
)
3150
SQLSTATE: 22032
(ER_JSON_VALUE_TOO_BIG
)
3151
SQLSTATE: 22032
(ER_JSON_KEY_TOO_BIG
)
3152
SQLSTATE: 42000
(ER_JSON_USED_AS_KEY
)
3153
SQLSTATE: 42000
(ER_JSON_VACUOUS_PATH
)
3154
SQLSTATE: 42000
(ER_JSON_BAD_ONE_OR_ALL_ARG
)
3155
SQLSTATE: 22003
(ER_NUMERIC_JSON_VALUE_OUT_OF_RANGE
)
3156
SQLSTATE: 22018
(
ER_INVALID_JSON_VALUE_FOR_CAST
)
3157
SQLSTATE: 22032
(ER_JSON_DOCUMENT_TOO_DEEP
)
3158
SQLSTATE: 22032
(ER_JSON_DOCUMENT_NULL_KEY
)
3159
SQLSTATE: HY000
(
ER_SECURE_TRANSPORT_REQUIRED
)
require_secure_transport
клиенты могут соединиться только
используя безопасный транспорт. Квалифицированные соединения это
те, которые используют SSL, файл сокета Unix или
совместно используемую память.3160
SQLSTATE: HY000
(
ER_NO_SECURE_TRANSPORTS_CONFIGURED
)
require_secure_transport
не может быть включена, если сервер
не поддерживает по крайней мере один безопасный транспорт. Сконфигурируйте
сервер с необходимыми ключами/сертификатами SSL, чтобы включить соединения
SSL, или включите системную переменную
shared_memory
,
чтобы разрешить соединения по совместно используемой памяти.3161
SQLSTATE: HY000
(
ER_DISABLED_STORAGE_ENGINE
)
disabled_storage_engines
, или изменить существующую таблицу (или
табличное пространство) к такому механизму. Выберите иной механизм хранения.
3162
SQLSTATE: HY000
(
ER_USER_DOES_NOT_EXIST
)
3163
SQLSTATE: HY000
(
ER_USER_ALREADY_EXISTS
)
3164
SQLSTATE: HY000
(ER_AUDIT_API_ABORT
)
3165
SQLSTATE: 42000
(
ER_INVALID_JSON_PATH_ARRAY_CELL
)
3166
SQLSTATE: HY000
(
ER_BUFPOOL_RESIZE_INPROGRESS
)
3167
SQLSTATE: HY000
(
ER_FEATURE_DISABLED_SEE_DOC
)
3168
SQLSTATE: HY000
(ER_SERVER_ISNT_AVAILABLE
)
3169
SQLSTATE: HY000
(ER_SESSION_WAS_KILLED
)
3170
SQLSTATE: HY000
(ER_CAPACITY_EXCEEDED
)
3171
SQLSTATE: HY000
(
ER_CAPACITY_EXCEEDED_IN_RANGE_OPTIMIZER
)
3173
SQLSTATE: HY000
(
ER_CANT_WAIT_FOR_EXECUTED_GTID_SET_WHILE_OWNING_A_GTID
)
3174
SQLSTATE: HY000
(
ER_CANNOT_ADD_FOREIGN_BASE_COL_VIRTUAL
)
3175
SQLSTATE: HY000
(
ER_CANNOT_CREATE_VIRTUAL_INDEX_CONSTRAINT
)
3176
SQLSTATE: HY000
(
ER_ERROR_ON_MODIFYING_GTID_EXECUTED_TABLE
)
3177
SQLSTATE: HY000
(ER_LOCK_REFUSED_BY_ENGINE
)
3178
SQLSTATE: HY000
(ER_UNSUPPORTED_ALTER_ONLINE_ON_VIRTUAL_COLUMN
)
3179
SQLSTATE: HY000
(ER_MASTER_KEY_ROTATION_NOT_SUPPORTED_BY_SE
)
3181
SQLSTATE: HY000
(ER_MASTER_KEY_ROTATION_BINLOG_FAILED
)
3182
SQLSTATE: HY000
(ER_MASTER_KEY_ROTATION_SE_UNAVAILABLE
)
3183
SQLSTATE: HY000
(ER_TABLESPACE_CANNOT_ENCRYPT
)
3184
SQLSTATE: HY000
(ER_INVALID_ENCRYPTION_OPTION
)
3185
SQLSTATE: HY000
(ER_CANNOT_FIND_KEY_IN_KEYRING
)
3186
SQLSTATE: HY000
(ER_CAPACITY_EXCEEDED_IN_PARSER
)
3187
SQLSTATE: HY000
(ER_UNSUPPORTED_ALTER_ENCRYPTION_INPLACE
)
3188
SQLSTATE: HY000
(ER_KEYRING_UDF_KEYRING_SERVICE_ERROR
)
3189
SQLSTATE: HY000
(ER_USER_COLUMN_OLD_LENGTH
)
3190
SQLSTATE: HY000
(ER_CANT_RESET_MASTER
)
3191
SQLSTATE: HY000
(ER_GROUP_REPLICATION_MAX_GROUP_SIZE
)
3192
SQLSTATE: HY000
(ER_CANNOT_ADD_FOREIGN_BASE_COL_STORED
)
3193
SQLSTATE: HY000
(ER_TABLE_REFERENCED
)
3500
SQLSTATE: HY000
(ER_UNSUPPORT_COMPRESSED_TEMPORARY_TABLE
)
3501
SQLSTATE: HY000
(ER_ACL_OPERATION_FAILED
)
3502
SQLSTATE: HY000
(ER_UNSUPPORTED_INDEX_ALGORITHM
)
3503
SQLSTATE: 42Y07
(ER_NO_SUCH_DB
)
3504
SQLSTATE: HY000
(ER_TOO_BIG_ENUM
)
3505
SQLSTATE: HY000
(ER_TOO_LONG_SET_ENUM_VALUE
)
3506
SQLSTATE: HY000
(ER_INVALID_DD_OBJECT
)
3507
SQLSTATE: HY000
(ER_UPDATING_DD_TABLE
)
3508
SQLSTATE: HY000
(ER_INVALID_DD_OBJECT_ID
)
3509
SQLSTATE: HY000
(ER_INVALID_DD_OBJECT_NAME
)
3510
SQLSTATE: HY000
(ER_TABLESPACE_MISSING_WITH_NAME
)
3511
SQLSTATE: HY000
(ER_TOO_LONG_ROUTINE_COMMENT
)
3512
SQLSTATE: HY000
(ER_SP_LOAD_FAILED
)
3513
SQLSTATE: HY000
(ER_INVALID_BITWISE_OPERANDS_SIZE
)
3514
SQLSTATE: HY000
(ER_INVALID_BITWISE_AGGREGATE_OPERANDS_SIZE
)
3515
SQLSTATE: HY000
(ER_WARN_UNSUPPORTED_HINT
)
3516
SQLSTATE: 22S01
(ER_UNEXPECTED_GEOMETRY_TYPE
)
3517
SQLSTATE: SR002
(ER_SRS_PARSE_ERROR
)
3518
SQLSTATE: SR003
(ER_SRS_PROJ_PARAMETER_MISSING
)
3519
SQLSTATE: 01000
(ER_WARN_SRS_NOT_FOUND
)
3520
SQLSTATE: 22S00
(ER_SRS_NOT_CARTESIAN
)
3521
SQLSTATE: SR001
(ER_SRS_NOT_CARTESIAN_UNDEFINED
)
3522
SQLSTATE: HY000
(ER_PK_INDEX_CANT_BE_INVISIBLE
)
3523
SQLSTATE: HY000
(ER_UNKNOWN_AUTHID
)
3524
SQLSTATE: HY000
(ER_FAILED_ROLE_GRANT
)
3525
SQLSTATE: HY000
(ER_OPEN_ROLE_TABLES
)
3526
SQLSTATE: HY000
(ER_FAILED_DEFAULT_ROLES
)
3527
SQLSTATE: HY000
(ER_COMPONENTS_NO_SCHEME
)
3528
SQLSTATE: HY000
(ER_COMPONENTS_NO_SCHEME_SERVICE
)
3529
SQLSTATE: HY000
(ER_COMPONENTS_CANT_LOAD
)
3530
SQLSTATE: HY000
(ER_ROLE_NOT_GRANTED
)
3531
SQLSTATE: HY000
(ER_FAILED_REVOKE_ROLE
)
3532
SQLSTATE: HY000
(ER_RENAME_ROLE
)
3533
SQLSTATE: HY000
(ER_COMPONENTS_CANT_ACQUIRE_SERVICE_IMPLEMENTATION
)
3534
SQLSTATE: HY000
(ER_COMPONENTS_CANT_SATISFY_DEPENDENCY
)
3535
SQLSTATE: HY000
(ER_COMPONENTS_LOAD_CANT_REGISTER_SERVICE_IMPLEMENTATION
)
3536
SQLSTATE: HY000
(ER_COMPONENTS_LOAD_CANT_INITIALIZE
)
3537
SQLSTATE: HY000
(ER_COMPONENTS_UNLOAD_NOT_LOADED
)
3538
SQLSTATE: HY000
(ER_COMPONENTS_UNLOAD_CANT_DEINITIALIZE
)
3539
SQLSTATE: HY000
(ER_COMPONENTS_CANT_RELEASE_SERVICE
)
3540
SQLSTATE: HY000
(ER_COMPONENTS_UNLOAD_CANT_UNREGISTER_SERVICE
)
3541
SQLSTATE: HY000
(ER_COMPONENTS_CANT_UNLOAD
)
3542
SQLSTATE: HY000
(ER_WARN_UNLOAD_THE_NOT_PERSISTED
)
3543
SQLSTATE: HY000
(ER_COMPONENT_TABLE_INCORRECT
)
3544
SQLSTATE: HY000
(ER_COMPONENT_MANIPULATE_ROW_FAILED
)
3545
SQLSTATE: HY000
(ER_COMPONENTS_UNLOAD_DUPLICATE_IN_GROUP
)
3546
SQLSTATE: HY000
(ER_CANT_SET_GTID_PURGED_DUE_SETS_CONSTRAINTS
)
3547
SQLSTATE: HY000
(ER_CANNOT_LOCK_USER_MANAGEMENT_CACHES
)
3548
SQLSTATE: SR001
(ER_SRS_NOT_FOUND
)
3549
SQLSTATE: HY000
(ER_VARIABLE_NOT_PERSISTED
)
3550
SQLSTATE: HY000
(ER_IS_QUERY_INVALID_CLAUSE
)
3551
SQLSTATE: HY000
(ER_UNABLE_TO_STORE_STATISTICS
)
3552
SQLSTATE: HY000
(ER_NO_SYSTEM_SCHEMA_ACCESS
)
3553
SQLSTATE: HY000
(ER_NO_SYSTEM_TABLESPACE_ACCESS
)
3554
SQLSTATE: HY000
(
ER_NO_SYSTEM_TABLE_ACCESS
)
3555
SQLSTATE: HY000
(
ER_NO_SYSTEM_TABLE_ACCESS_FOR_DICTIONARY_TABLE
)
ER_NO_SYSTEM_TABLE_ACCESS_FOR_DICTIONARY_TABLE
добавлена в
8.0.1.3556
SQLSTATE: HY000
(
ER_NO_SYSTEM_TABLE_ACCESS_FOR_SYSTEM_TABLE
)
ER_NO_SYSTEM_TABLE_ACCESS_FOR_SYSTEM_TABLE
добавлена в
8.0.1.3557
SQLSTATE: HY000
(
ER_NO_SYSTEM_TABLE_ACCESS_FOR_TABLE
)
ER_NO_SYSTEM_TABLE_ACCESS_FOR_TABLE
добавлена в 8.0.1.
B.4. Коды ошибки и сообщения клиента
include/errmsg.h
исходных текстов MySQL.
libmysql/errmsg.c
. %d
и %s
представляют числа и строки, соответственно, которыми заменятся в сообщении,
когда оно выведено на экран.2000
(CR_UNKNOWN_ERROR
)
2001
(CR_SOCKET_CREATE_ERROR
)
2002
(CR_CONNECTION_ERROR
)
2003
(CR_CONN_HOST_ERROR
)
2004
(CR_IPSOCK_ERROR
)
2005
(CR_UNKNOWN_HOST
)
2006
(CR_SERVER_GONE_ERROR
)
2007
(CR_VERSION_ERROR
)
2008
(CR_OUT_OF_MEMORY
)
2009
(CR_WRONG_HOST_INFO
)
2010
(CR_LOCALHOST_CONNECTION
)
2011
(CR_TCP_CONNECTION
)
2012
(CR_SERVER_HANDSHAKE_ERR
)
2013
(CR_SERVER_LOST
)
2014
(CR_COMMANDS_OUT_OF_SYNC
)
2015
(CR_NAMEDPIPE_CONNECTION
)
2016
(CR_NAMEDPIPEWAIT_ERROR
)
2017
(CR_NAMEDPIPEOPEN_ERROR
)
2018
(CR_NAMEDPIPESETSTATE_ERROR
)
2019
(CR_CANT_READ_CHARSET
)
2020
(CR_NET_PACKET_TOO_LARGE
)
2021
(CR_EMBEDDED_CONNECTION
)
2022
(CR_PROBE_SLAVE_STATUS
)
2023
(CR_PROBE_SLAVE_HOSTS
)
2024
(CR_PROBE_SLAVE_CONNECT
)
2025
(CR_PROBE_MASTER_CONNECT
)
2026
(CR_SSL_CONNECTION_ERROR
)
2027
(CR_MALFORMED_PACKET
)
2028
(CR_WRONG_LICENSE
)
2029
(CR_NULL_POINTER
)
2030
(CR_NO_PREPARE_STMT
)
2031
(CR_PARAMS_NOT_BOUND
)
2032
(CR_DATA_TRUNCATED
)
2033
(CR_NO_PARAMETERS_EXISTS
)
2034
(
CR_INVALID_PARAMETER_NO
)
mysql_stmt_fetch_column()
неправильный. Число параметров для
mysql_stmt_send_long_data()
неправильное.mysql_options4()
превышает предел в 64 КБ.2035
(CR_INVALID_BUFFER_USE
)
2036
(CR_UNSUPPORTED_PARAM_TYPE
)
2037
(CR_SHARED_MEMORY_CONNECTION
)
2038
(CR_SHARED_MEMORY_CONNECT_REQUEST_ERROR
)
2039
(CR_SHARED_MEMORY_CONNECT_ANSWER_ERROR
)
2040
(CR_SHARED_MEMORY_CONNECT_FILE_MAP_ERROR
)
2041
(CR_SHARED_MEMORY_CONNECT_MAP_ERROR
)
2042
(CR_SHARED_MEMORY_FILE_MAP_ERROR
)
2043
(CR_SHARED_MEMORY_MAP_ERROR
)
2044
(CR_SHARED_MEMORY_EVENT_ERROR
)
2045
(CR_SHARED_MEMORY_CONNECT_ABANDONED_ERROR
)
2046
(CR_SHARED_MEMORY_CONNECT_SET_ERROR
)
2047
(CR_CONN_UNKNOW_PROTOCOL
)
2048
(CR_INVALID_CONN_HANDLE
)
2049
(CR_UNUSED_1
)
2050
(CR_FETCH_CANCELED
)
2051
(CR_NO_DATA
)
2052
(CR_NO_STMT_METADATA
)
2053
(CR_NO_RESULT_SET
)
2054
(CR_NOT_IMPLEMENTED
)
2055
(CR_SERVER_LOST_EXTENDED
)
2056
(CR_STMT_CLOSED
)
2057
(CR_NEW_STMT_METADATA
)
2058
(CR_ALREADY_CONNECTED
)
2059
(
CR_AUTH_PLUGIN_CANNOT_LOAD
)
2060
(
CR_DUPLICATE_CONNECTION_ATTR
)
mysql_options4()
.2061
(CR_AUTH_PLUGIN_ERR
)
2062
(CR_INSECURE_API_ERR
)
B.5. Проблемы и распространенные ошибки
B.5.1.
Как определить, что вызывает проблему
glibc
) достаточно современны.kbd_mode -a
./var/log/messages
) по причинам Вашей проблемы. Если Вы думаете,
что проблема находится в MySQL, Вы должны также исследовать файлы системного
журнала MySQL. См. раздел 6.4.B.5.2. Распространенные ошибки при
использовании программ MySQL
B.5.2.1. Access denied
Access denied
может иметь много причин. Часто проблема
связана с учетными записями MySQL, которые сервер разрешает программам
клиента использовать, соединяясь. См. разделы
7.2 и
7.2.8.B.5.2.2. Can't connect to
[local] MySQL server
/tmp/mysql.sock
), или по TCP/IP, который соединяется через номер
порта. Соединение файла сокета Unix быстрее, чем TCP/IP, но может
использоваться только, соединяясь с сервером на том же самом компьютере. Файл
сокета Unix используется, если Вы не определяете имя хоста или если
определяете специальное имя хоста localhost
.
--enable-named-pipe
, Вы можете также соединиться по именованному
каналу, если Вы выполняете клиента на том компьютере, на котором работает
сервер. Название названного канала MySQL
по умолчанию. Если Вы
не задаете имя хоста, соединяясь с
mysqld,
клиент MySQL сначала пытается соединиться с названным каналом. Если это не
работает, он соединяется с портом TCP/IP. Вы можете вызвать использование
именованных каналов в Windows при использовании .
как имени хоста.Can't connect to ...
обычно сообщает, что нет
никакого сервера MySQL, работающего в системе, или что Вы используете
неправильное имя файла сокета Unix или номер порта TCP/IP, пытаясь
соединиться с сервером. Вы должны также проверить, что порт TCP/IP, который
Вы используете, не был заблокирован брандмауэром или
службой блокирования порта.Can't connect to MySQL server on
'
указывает, что сетевое
соединение не работает. Вы должны проверить, что есть выполненяемый сервер
MySQL, что у него есть включенные сетевые соединения, и что сетевой порт,
который Вы определили, является тем, который настроен на сервере.server
' (10061)host_ip
представляет IP-адрес машины, где сервер работает.
shell> mysqladmin version
shell> mysqladmin variables
shell> mysqladmin -h `hostname` version variables
shell> mysqladmin -h `hostname` --port=3306 version
shell> mysqladmin -h host_ip version
shell> mysqladmin --protocol=SOCKET --socket=/tmp/mysql.sock version
Отметьте использование обратных кавычек, а не кавычек с командой
hostname: они заставляют вывод
hostname (то есть, текущее имя хоста) быть
замененным в команде
mysqladmin. Если Вы не имеете команды
hostname или работаете в Windows, Вы можете
вручную ввести имя хоста своей машины (без обратных кавычек) после опции
-h
. Вы можете также попробовать -h 127.0.0.1
,
чтобы соединяться по TCP/IP с локальной машиной.
--skip-networking
, он не будет принимать соединения TCP/IP вообще. Если сервер был
запущен с опцией
--bind-address=127.0.0.1
, он обрабатывает соединения TCP/IP только
локально на кольцевом интерфейсе и не будет принимать удаленные соединения.
Can't connect to local MySQL server
:/tmp/mysql.sock
по умолчанию). Например, у Вас могло бы быть
задание cron, которое удаляет старые файлы из
каталога /tmp
. Вы можете всегда выполнять
mysqladmin version
, чтобы проверить, существует ли файл сокета Unix, который
mysqladmin
пытается использовать. Затруднительное положение в этом случае решается
запретом cron удалять mysql.sock
или надо поместить файл сокета где-то в другом месте. См.
раздел B.5.3.6.
--socket=/path/to/socket
, но забыли указать клиенту новое имя
файла сокета. Если Вы изменяете путь сокета для сервера, Вы должны также
уведомить клиентов MySQL. Вы можете сделать это, обеспечивая ту же опцию
--socket
,
когда Вы выполняете программы клиента. Вы также должны гарантировать, что у
клиентов есть разрешение получить доступ к файлу mysql.sock
.
Чтобы узнать, где находится файл сокета, Вы можете сделать:
shell> netstat -ln | grep mysql
--socket
,
которая определяет имя файла в каталоге, где сервер может создать его и
программы клиента могут получить доступ к нему.Can't connect to MySQL server
on some_host
, Вы можете попробовать следующие вещи, чтобы
узнать, в чем проблема:telnet some_host 3306
. По умолчанию номер порта MySQL 3306.
Измените значение, если Ваш сервер слушает иной порт. Если есть выполнение
сервера MySQL, Вы должны получить ответ, который включает номер версии
сервера. Если Вы получаете ошибку, например, telnet: Unable to connect
to remote host: Connection refused
, тогда нет никакого сервера,
работающего на данном порту.port
.mysqld
.B.5.2.2.1.
Соединение с сервером MySQL терпит неудачу в Windows
Can't connect to MySQL server
, причина может быть в том, что Windows не учитывает достаточно много
короткоживущих портов для таких соединений.TIME_WAIT
должен сохранить соединение, принимающее пакеты
даже после того, как соединение было закрыто. Это потому, что
интернет-маршрутизация может заставить пакет следовать медленным маршрутом к
своему месту назначения, и он может прибыть после того, как обе стороны
согласились закрыть соединение. Если порт используется для нового соединения,
тот пакет от старого соединения мог бы сломать протокол или поставить под
угрозу данные оригинального соединения. Задержка TIME_WAIT
предотвращает это, гарантируя, что порт не может быть снова использован, пока
некоторое время не пройдет для тех отсроченных пакетов.TIME_WAIT
на LAN-соединениях, потому что
есть немного шансов существования пакетов с очень длинными задержками, по
сравнению с Интернет с его сравнительно большими
расстояниями и временами ожидания.TIME_WAIT
120
секунд. Порт не будет доступен снова, пока это время не истечет. Диапазон
по умолчанию значений номеров портов зависит от версии Windows, с большим
ограниченным количеством портов в более старых версиях:TIME_WAIT
у Вас есть хороший шанс для того, чтобы исчерпать
порты. Есть два способа решить эту проблему:Regedt32.exe
).
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
Edit
кликните Add Value
, затем
добавьте следующее значение:
Value Name: MaxUserPort
Data Type: REG_DWORD
Value: 65534
Это определяет число эфемерных портов, доступных любому пользователю.
Допустимый диапазон: 5000-65534 (десятичное число).
Значение по умолчанию: 0x1388 (5000, десятичное число).Edit
кликните Add Value
, затем
добавьте следующее значение:
Value Name: TcpTimedWaitDelay
Data Type: REG_DWORD
Value: 30
Это определяет число секунд, которые надо держать порт TCP в статусе
TIME_WAIT
перед закрытием. Допустимый диапазон между 30 и 300
(десятичные числа). Значение по умолчанию 0x78 (120 десятично).B.5.2.3.
Потерянное соединение с сервером MySQL
net_read_timeout
от значения по умолчанию в 30 секунд до 60 секунд или дольше,
достаточного времени для передачи данных.connect_timeout
установлено только в несколько секунд, Вы в состоянии решить проблему,
увеличивая его до десяти секунд, возможно больше, если у Вас есть очень
длинное расстояние или медленное соединение. Вы можете определить, в чем дело
при использовании SHOW GLOBAL STATUS LIKE 'Aborted_connects'
.
Это значение увеличится для каждой начальной попытки соединения, которую
прерывает сервер. Вы можете видеть reading authorization packet
как часть сообщения об ошибке.BLOB
,
которые больше чем
max_allowed_packet
, который может вызвать эту ошибку с некоторыми клиентами. Иногда
Вы можете видеть ошибку
ER_NET_PACKET_TOO_LARGE
и это подтверждает, что Вы должны
увеличить
max_allowed_packet
.B.5.2.4.
Проблемы с паролем в интерактивном режиме
--password
или -p
, у которой нет никакого последующего значения пароля:
shell> mysql -u
На некоторых системах Вы можете найти, что Ваш пароль работает, когда
определен в файле опции или в командной строке, но не когда Вы вводите его в
интерактивном режиме в ответ на запрос user_name
-p
Enter password:
Enter password:
. Это
происходит, когда библиотека, предоставленная системой, чтобы считать пароли,
ограничивает значения пароля небольшим количеством символов (как правило,
восемь). Это проблема с системной библиотекой, не с MySQL. Чтобы обойти
проблему, измените свой пароль MySQL на значение, которое является восемью
или меньшим количеством символов или впишите Ваш пароль в файл опций.
B.5.2.5. Хост 'host_name' блокирован
Host '
Значение системной переменной
host_name
' is blocked because of many connection errors.
Unblock with 'mysqladmin flush-hosts'
max_connect_errors
определяет, сколько последовательных прерванных запросов
соединения разрешено. См.
раздел 6.1.5. После
max_connect_errors
неудавшихся запросов без успешного соединения,
mysqld
предполагает, что что-то неправильно (например, что кто-то пытается вскрыть
систему) и блокирует соединения с этого хоста до запроса
FLUSH HOSTS
или выполнения команды
mysqladmin flush-hosts
.
max_connect_errors
при запуске сервера:
shell> mysqld_safe --max_connect_errors=10000 &
Значение может также быть установлено во времени выполнения:
mysql> SET GLOBAL max_connect_errors=10000;
Если Вы получаете сообщение об ошибке Host '
для данного хоста, Вы должны сначала проверить, что
нет ничего неправильного с соединениями TCP/IP от него. Если у Вас есть
сетевые проблемы, не стоит увеличивать
host_name
' is blockedmax_connect_errors
.
B.5.2.6. Too many connections
Too many connections
, когда Вы
пытаетесь соединиться с mysqld
, это означает, что все доступные соединения
используются другими клиентами.max_connections
.
Значение по умолчанию 151, чтобы улучшить работу, когда MySQL используется с
веб-сервером Apache. Ранее значение по умолчанию было 100. Если Вы должны
поддержать больше соединений, Вы должны установить большее значение
для этой переменной.
max_connections+1
клиентских соединений. Дополнительное соединение
сохранено для использования учетными записями, которые имеют привилегию
SUPER
. Предоставляя
привилегию SUPER
администраторам, а не нормальным пользователям (кто не должен нуждаться в
этом), администратор может соединиться с сервером и использовать
SHOW PROCESSLIST
, чтобы
диагностировать проблемы, даже если максимальное количество
непривилегированных клиентов соединено. См.
раздел 14.7.5.29.open-files-limit
может быть необходимым. Также см.
раздел 2.5 для того, как поднять
ограничение операционной системы на то, сколько дескрипторов
может использоваться MySQL.B.5.2.7. Out of memory
mysql: Out of memory at line 42, 'malloc.c'
mysql: needed 8136 byte (8k), memory in use: 12481367 bytes (12189k)
ERROR 2008: MySQL client ran out of memory
Чтобы исправить проблему, сначала проверьте, правилен ли Ваш запрос.
Действительно ли разумно, что это должно возвратить очень много строк? В
противном случае исправьте запрос и попробуйте еще раз. Иначе, Вы можете
вызвать mysql
с опцией --quick
.
Это заставляет использовать функцию C API
mysql_use_result()
,
чтобы получить набор результатов, которая меньше нагружает клиента
(но больше сервер).
B.5.2.8. MySQL server has gone away
Lost connection
to server during query
.MySQL server has gone away
состоит в том, что сервер закрыл соединение по тайм-ауту. В этом
случае Вы обычно получаете один из следующих кодов ошибки.
Код ошибки Описание
CR_SERVER_GONE_ERROR
Клиент не мог послать запрос на сервер.
CR_SERVER_LOST
Клиент не получал ошибку при обращении к серверу, но не получил полный
ответ (или любой ответ). wait_timeout
, когда Вы запускаете mysqld
. См. раздел
6.1.5.mysql
.MySQL server has gone away
:
KILL
или
mysqladmin kill
.mysql_options(...,
MYSQL_OPT_READ_TIMEOUT,...)
или
mysql_options(...,
MYSQL_OPT_WRITE_TIMEOUT,...)
.
В этом случае увеличение тайм-аута может помочь решить проблему.reconnect
структуры
MYSQL
равен 0).
wait_timeout
) прежде, чем команда была выполнена.
mysql_ping()
на соединении,
если прошло длительное время начиная с последнего запроса (так делает
Connector/ODBC) или установить
wait_timeout
в
mysqld
настолько высоко, что это практически никогда не кончается.BLOB
), Вы можете увеличить предел запроса, устанавливая переменную
max_allowed_packet
, у которой есть значение по умолчанию 4 МБ. Вы, возможно, также
должны увеличить максимальный пакетный размер на конце клиента. Больше
информации об установке пакетного размера дано в
in разделе B.5.2.9.
INSERT
или
REPLACE
, которые вставляют очень
много строк, могут также вызвать эти виды ошибок. Любой из этих запросов
посылает единственную команду серверу независимо от числа строк, которые
будут вставлены, таким образом, Вы можете часто избегать ошибки, сокращая
количество строк, посланных INSERT
или REPLACE
.MySQL server has gone away
,
если MySQL запущен с опцией
--skip-networking
.
log_error_verbosity
равной 3. Это регистрирует некоторые из
сообщений разъединения в файл hostname.err
. См.
раздел 6.4.2.CHECK TABLE
прежде, чем Вы
выполняли запрос, Вы можете обеспечить восстанавливаемый прецедент? См.
раздел 26.5.wait_timeout
сервера MySQL? mysqladmin
variables дает Вам значение этой переменной.B.5.2.9. Packet Too Large
max_allowed_packet
байт, это порождает ошибку
ER_NET_PACKET_TOO_LARGE
и завершает соединение. С некоторыми
клиентами Вы можете также получить ошибку Lost connection to MySQL
server during query
, если коммуникационный пакет
является слишком большим.max_allowed_packet
так что, если Вы хотите обработать большие пакеты, Вы должны
увеличить эту переменную в клиенте и в сервере.max_allowed_packet
равно 16 MB. Чтобы установить большее значение, запустите
mysql так:
shell> mysql --max_allowed_packet=32M
Это устанавливает пакетный размер в 32 МБ.
max_allowed_packet
равно 4 MB. Вы можете увеличить это, если
сервер должен обработать большие запросы (например, если Вы работаете с
большими столбцами BLOB
). Например,
чтобы установить переменную в 16 МБ, запустите сервер так:
shell> mysqld --max_allowed_packet=16M
Вы можете также использовать файл опции, чтобы установить
max_allowed_packet
. Например, чтобы установить размер для сервера в 16 МБ, добавьте
следующие строки в файле опций:
[mysqld]
max_allowed_packet=16M
Безопасно увеличить значение этой переменной, потому что дополнительная
память выделена только при необходимости. Например,
mysqld
выделяет больше памяти только, когда Вы запускаете длинный запрос или когда
mysqld
должен возвратить большую строку результата. Маленькое значение по умолчанию
переменной предосторожность, чтобы поймать неправильные пакеты между клиентом
и сервером, а также гарантировать, что Вы не исчерпываете память при
использовании больших пакетов случайно.
BLOB
,
но не предоставили mysqld
доступ к достаточной памяти, чтобы обработать запрос.
Если Вы подозреваете, что дело обстоит именно так, попытайтесь добавить
ulimit -d 256000 в начале скрипта
mysqld_safe
и перезапустите mysqld
.B.5.2.10.
Коммуникационные ошибки и прерванные соединения
Aborted_
т
xxx
Connection_errors_
. См.
раздел 6.1.7.xxx
host_cache
Performance Schema. См. разделы
9.12.4.2 и
23.9.16.1.log_error_verbosity
равной 3, Вы могли бы найти подобные этому сообщения в
Вашем журнале ошибок:
[Note] Aborted connection 854 to db: 'employees' user: 'josh'
Если клиент неспособен даже соединиться, сервер постепенно увеличивает
значение Aborted_connects
. Неудачные попытки соединения могут произойти
по следующим причинам:
connect_timeout
секунд, чтобы получить пакет. См.
раздел 6.1.5.Aborted_clients
и пишет в журнал ошибок сообщение Aborted connection.
Причина может быть следующей:mysql_close()
при выходе.
wait_timeout
или
interactive_timeout
секунд, не выпуская запросов серверу. См.
раздел 6.1.5.max_allowed_packet
является слишком маленьким, или запросы
требуют большей памяти, чем Вы выделили для
mysqld. См.
раздел B.5.2.9.B.5.2.11. The table is full
B.5.2.12. Can't create/write to file
Can't create/write to file '\\sqla3fe_0.ism'.
Предыдущая ошибка типичное сообщение для Windows, сообщение в Unix подобно.
--tmpdir
или добавить опцию к секции
[mysqld]
Вашего файла опции. Например, чтобы определить каталог
C:\temp
, используйте эти строки:
[mysqld]
tmpdir=C:/temp
Каталог C:\temp
должен существовать и иметь достаточное
пространство для сервера MySQL. См.
раздел 5.2.6.
tmpdir
.
shell> perror 28
OS error code28: No space left on device
Если Вы получаете ошибку следующего типа во время запуска, она указывает, что
файловая система или каталог, используемый для того, чтобы сохранить файлы с
данными, являются защищенными от записи. При условии, что ошибка при записи к
испытательному файлу, ошибка не серьезна и может
быть безопасно проигнорирована.
Can't create test file /usr/local/mysql/data/master.lower-test
B.5.2.13. Commands out of sync
Commands out of sync; you can't run this
command now
в Вашем коде клиента Вы вызываете функции
клиента в неправильном порядке.mysql_use_result()
и пробуете выполнить новый запрос прежде, чем Вы вызвали
mysql_free_result()
.
Это может также произойти, если Вы пытаетесь выполнить два запроса, которые
возвращают данные без запроса
mysql_use_result()
или mysql_store_result()
между ними.B.5.2.14. Игнорирование пользователя
user
, у которой был неверный пароль.Found wrong password for user
'
some_user
'@'some_host
';
ignoring userB.5.2.15. Table 'tbl_name' doesn't exist
Table '
В некоторых случаях может случиться так, что таблица действительно
существует, но Вы обращаетесь к ней неправильно:
tbl_name
' doesn't exist
Can't find file: 'tbl_name
' (errno: 2)
SHOW TABLES
. См.
раздел 14.7.5.B.5.2.16.
Can't initialize character set
MySQL Connection Failed: Can't initialize character set
У этой ошибки может быть любая из следующих причин:
charset_name
-DDEFAULT_CHARSET=
. См.
раздел 2.8.4.charset_name
--character-sets-dir
.B.5.2.17.
File Not Found и подобные ошибки
ERROR '
, file_name
' not found
(errno: 23)Can't open file:
или любую другую ошибку с file_name
(errno: 24)errno 23
или
errno 24
от MySQL, это означает, что Вы не выделили достаточно
дескрипторов файла для сервера MySQL. Вы можете использовать
perror,
чтобы получить описание того, что означает код ошибки:
shell> perror 23
OS error code23:File table overflow
shell> perror 24
OS error code24:Too many open files
shell> perror 11
OS error code11:Resource temporarily unavailable
Проблема здесь состоит в том, что
mysqld пытается сохранить открытым слишком много
файлов одновременно. Вы можете или сказать
mysqld
не открывать очень много файлов сразу или увеличить число дескрипторов файла,
доступных mysqld
.
table_open_cache
(значение по умолчанию 64). Это, возможно, не полностью предотвращает
исчерпание дескрипторов файла, потому что при некоторых обстоятельствах
сервер может попытаться расширить размер кэша временно, как описано в
разделе 9.4.3.1. Сокращение значения
max_connections
также сокращает количество открытых файлов (значение по умолчанию 100).
--open-files-limit
в
mysqld_safe или установить системную переменную
open_files_limit
. См. раздел 6.1.5.
Самый легкий способ установить эти значения состоит в том, чтобы добавить
опцию к Вашему файлу опций. См. раздел
5.2.6. Если у Вас есть старая версия
mysqld, которая не поддерживает установку
предела открытых файлов, Вы можете отредактировать скрипт
mysqld_safe
. Есть в нем закомментированная строка ulimit -n 256
. Вы можете удалить символ #
, чтобы
раскомментировать эту строку, и изменить число 256
, чтобы
определить количество дескрипторов файла, которые будут доступны для
mysqld.
--open-files-limit
и ulimit могут
увеличить число дескрипторов файла, но только до предела, наложенного
операционной системой. Есть также жесткий предел,
который может быть переопределен, только если Вы запускаете
mysqld_safe
или mysqld
как root
(только помните, что Вы также должны запустить
сервер с опцией --user
в этом случае так, чтобы он не продолжил работать как
root
после того, как стартует). Если Вы должны увеличить предел
дескрипторов операционной системы на число описателей файла, доступных
каждому процессу, консультируйтесь с документацией для своей системы.B.5.2.18. Проблемы табличного повреждения
--myisam-recover-options
, MySQL автоматически проверяет и
пытается восстановить таблицы MyISAM
, если они отмечены как
'не закрыта должным образом' или 'отказ'. Если это происходит, MySQL пишет
запись в файл hostname.err
: 'Warning: Checking table ...'
, которая сопровождается Warning: Repairing table
, если
таблица должна быть восстановлена. Если Вы получаете много этих ошибок, без
mysqld
упавшего неожиданно как раз перед этим, то что-то тут не так и должно
быть исследовано далее.MyISAM
, он
пишет дополнительную информацию в журнал ошибок, такую как имя и номер строки
исходного файла и список потоков, получающих доступ к таблице. Пример:
Got an error from thread_id=1, mi_dynrec.c:368
. Это полезная
информация для включения в отчеты об ошибках.B.5.3. Проблемы администрирования
B.5.3.1. Проблемы с правами доступа
UMASK
или UMASK_DIR
может быть установлена
неправильно, когда mysqld
стартует. Например, MySQL мог бы выдать следующее
сообщение об ошибке, когда Вы составляете таблицу:
ERROR: Can't find file: 'path/with/
Значения по умолчанию file_name
' (Errcode: 13)
UMASK
и UMASK_DIR
0640
и 0750
, соответственно. MySQL предполагает,
что значение для UMASK
или UMASK_DIR
восьмеричное,
если начинается с 0. Например, установка UMASK=0600
эквивалентна
UMASK=384
поскольку восьмеричное 0600 это десятичное 384.
UMASK
, запустите
mysqld_safe
:
shell> UMASK=384# = 600 in octal
shell> export UMASK
shell> mysqld_safe &
0750
. Чтобы изменить это поведение, установите
переменную UMASK_DIR
. Если Вы устанавливаете это значение, новые
каталоги создаются с объединенным значением UMASK
и
UMASK_DIR
. Например, чтобы дать группе доступ ко всем новым
каталогам, запустите
mysqld_safe так:
shell> UMASK_DIR=504# = 770 in octal
shell> export UMASK_DIR
shell> mysqld_safe &
B.5.3.2. Как сбросить пароль root
root
-пароль для MySQL, сервер не
требует пароля вообще для того, чтобы соединиться как root
.
Однако, это небезопасно. Для инструкций по назначению пароля, см.
раздел 2.9.4.root
-пароль и хотите изменить его, см. разделы
14.7.1.1 и
14.7.1.11.root
-пароль ранее, но забыли его, Вы можете
назначить новый пароль. Следующие разделы обеспечивают инструкции для Windows
и Unix-подобных систем.B.5.3.2.1.
Сброс Root-пароля: Windows
'root'@'localhost'
.
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
C:\mysql-init.txt
.--init-file
(обратите внимание, что наклонная черта влево в значении опции удвоена):
C:\> cd "C:\Program Files\MySQL\MySQL Server 8.0\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
Если Вы устанавливали MySQL в другое место, скорректируйте команду
cd.
--init-file
при запуске, изменяя пароль учетной записи 'root'@'localhost'
.
--console
к команде mysqld
.
--defaults-file
. Например:
C:\> mysqld
--defaults-file="C:\\ProgramData\\MySQL\\MySQL Server 8.0\\my.ini"
--init-file=C:\\mysql-init.txt
Соответствующяя установка
--defaults-file
установка может быть найдена, используя
Services Manager: из меню Start выберите Control Panel
, Administrative Tools, Services. Найдите
службу MySQL в списке, щелкните правой кнопкой мыши по строке и выберите
Properties
. Поле Path to executable
содержит
установку
--defaults-file
.C:\mysql-init.txt
.root
с новым паролем. Запустите сервер как обычно. Если Вы
выполняете сервер как службу, запустите его из окна Windows Services.B.5.3.2.2.
Сброс Root-пароля в Unix
'root'@'localhost'
.mysql
, Вы должны
войти в систему как mysql
перед использованием инструкций.
Альтернативно, Вы можете войти в систему как root
, но в этом
случае Вы должны запустить
mysqld с
опцией --user=mysql
.
Если Вы запускаете сервер как root
без использования
--user=mysql
,
сервер может создать принадлежащие root
файлы в каталоге данных,
такие как файлы системного журнала, и они могут вызвать связанные с доступом
проблемы для будущих запусков сервера. Если это произойдет, то Вы будете
должны исправить права доступа вручную.mysql
)..pid
, который содержит идентификатор процесса сервера.
Точное местоположение и название этого файла зависят от Вашего дистрибутива,
имени хоста, и конфигурации. Общие местоположения
/var/lib/mysql/
, /var/run/mysqld/
и
/usr/local/mysql/data/
. Вообще, у имени файла есть расширение
.pid
и начинается имя с mysqld
или с имени
хоста Вашей системы.
kill
(не
kill -9
) процессу
mysqld. Используйте фактический путь к .pid
в следующей команде:
shell> kill `cat /mysql-data-directory/host_name.pid`
Используйте обратные кавычки с командой cat
. Они вызывают вывод
cat
в команду kill
.
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
/home/me/mysql-init
. Файл содержит пароль, так что не сохраняйте
его там, где он может быть считан другими пользователями. Если Вы не
зарегистрированы как mysql
(пользователь выполнения сервера),
удостоверьтесь, что у файла есть права доступа для пользователя
mysql
на чтение.--init-file
:
shell> mysqld_safe --init-file=/home/me/mysql-init &
Сервер выполняет содержание файла, названного в опции
the
--init-file
при запуске, изменяя пароль для
'root'@'localhost'
./home/me/mysql-init
.B.5.3.2.3.
Сброс Root-пароля: общие инструкции
--skip-grant-tables
. Это позволяет любому соединиться без пароля и
со всеми привилегиями, и отключает команды управления учетными записями,
такие как ALTER USER
и
SET PASSWORD
. Поскольку это
небезопасно, стоит использовать
--skip-grant-tables
в соединении с
--skip-networking
дабы воспрепятствовать тому, чтобы удаленные клиенты соединились.
--skip-grant-tables
:
shell> mysql
mysql
скажите серверу перезагрузтть таблицы
привилегий так, чтобы запросы управления учетными записями работали:
mysql> FLUSH PRIVILEGES;
Теперь смените пароль учетной записи 'root'@'localhost'
.
Замените его паролем, который Вы хотите использовать.
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
--skip-grant-tables
и
--skip-networking
).B.5.3.3. Что делать, если MySQL падает
resolve_stack_dump
. См. раздел 26.5. Отметьте, что
значения переменных, написанные в журнале ошибок, возможно, не
всегда на 100% правильны.write()
после каждого запроса SQL и перед
отчетом клиенту о результате. Это не так, если Вы работаете с опцией
--delay-key-write
, тогда записаны файлы с данными, но не индексные
файлы. Это означает, что содержание файла с данными безопасно, даже если
mysqld
упадет, потому что операционная система гарантирует, что данные будут
записаны на диск. Вы можете вынудить MySQL сбросить все на диск после каждого
запроса SQL, запуская его с параметром
--flush
.lockd
), или Вы выполняете
много серверов с отключенной внешней блокировкой.ALTER TABLE
на восстановленной копии таблицы.MyISAM
и перезапустите
mysqld. Это гарантирует, что Вы работаете из
чистого состояния. См. главу 6.fork_big.pl
. Это расположено в
каталоге tests
дистрибутива исходных текстов.-DWITH_DEBUG=1
CMake и пересоберите. С поддержкой отладки
отловить нужную информацию будет много легче. См.
раздел 26.5.
--skip-external-locking
. На некоторых системах менеджер блокировок
lockd
не работает должным образом, опция
--skip-external-locking
говорит
mysqld не использовать внешнюю блокировку.
Это означает, что Вы не можете выполнить два сервера
mysqld в том
же самом каталоге данных, и что Вы должны быть осторожны, если используете
myisamchk
. Однако, может быть поучительно попробовать опцию как тест.
backtrace
info local
up
info local
up
info local
С gdb Вы можете также исследовать потоки
с помощью info threads
и переключиться на определенный поток
командой thread
, где
N
N
ID потока.VARCHAR
(не
BLOB
или
TEXT
), Вы можете попытаться
изменить все VARCHAR
на
CHAR
с помощью
ALTER TABLE
. Это вынуждает
MySQL использовать строки фиксированного размера. Строки фиксированного
размера занимают небольшое дополнительное место, но намного
более терпимы к повреждению.
B.5.3.4.
Как MySQL обрабатывает переполнение диска
MyISAM
. Это также
применими к записи файлов двоичного журнала, за исключением того, что ссылки
на строки и записи здесь
означают события.REPAIR TABLE
или
OPTIMIZE TABLE
или же когда индекс создается в пакете после
LOAD DATA INFILE
или после
запроса ALTER TABLE
. Все эти
запросы могут создать большие временные файлы, которые вызывают большие
проблемы для остальной части системы. Если диск становится полным, в то время
как MySQL делает любую из этих операций, это удаляет большие временные файлы
и отмечает таблицу как разрушенную. Исключение из этого:
ALTER TABLE
,
старая таблица не меняется вообще.B.5.3.5. Где MySQL хранит временные файлы
TMPDIR
как путь к каталогу, в котором можно хранить временные файлы. Если
TMPDIR
не задана, MySQL использует системное значение по
умолчанию, которое обычно является /tmp
, /var/tmp
или /usr/tmp
.TMPDIR
, TEMP
и TMP
. Найдя первую,
которая установлена, MySQL использует ее и не проверяет те, которые остаются.
Если ни одна из TMPDIR
, TEMP
или TMP
не установлены, MySQL использует системное значение по умолчанию Windows,
которое обычно является C:\windows\temp\
.--tmpdir
, чтобы
определить каталог в файловой системе, где у Вас есть достаточно
пространства. На ведомых устройствах репликации Вы можете использовать
--slave-load-tmpdir
, чтобы определить отдельный каталог для
хранения временных файлов для обработки запросов
LOAD DATA INFILE
.--tmpdir
может быть установлена в список из нескольких путей, которые используются
круговым способом. Пути должны быть отделены символами двоеточия
(:
) в Unix и символом точки с запятой (;
) в Windows.
--slave-load-tmpdir
не на каталог, который находится в основанной
на памяти файловой системе или каталог, который очищен, когда хост сервера
перезапускается. Ведомое устройство нуждается в некоторых из своих временных
файлов, чтобы пережить машинный перезапуск так, чтобы оно могло копировать
временные таблицы или операции LOAD DATA
INFILE
. Если файлы в ведомом временном каталоге потеряны, когда
сервер перезапускается, репликация терпит неудачу.ORDER BY
или GROUP BY
) MySQL обычно
использует один или два временных файла. Максимальное требуемое дисковое
пространство определено следующим выражением:
(длина того, что сортируется + sizeof(Размер указателя строки)) *
число соответствующих строк * 2
Размер указателя строки обычно четыре байта, но может вырасти в будущем
для действительно больших таблиц.
SELECT
запросов
MySQL также составляет временные таблицы SQL. Они не скрыты и имеют
названия формы SQL_*
.ALTER TABLE
создает временную копию оригинальной таблицы в том же самом
каталоге, где оригинальная таблица.Где InnoDB хранит временные файлы
InnoDB
сохранены во временном файле
табличного пространства ibtmp1
, который расположен в каталоге
MySQL data
(по умолчанию
datadir
). Опция
innodb_temp_data_file_path
может использоваться при запуске, чтобы
определить иное имя файла и местоположение.ALTER TABLE
на
таблице InnoDB
использует метод ALGORITHM=COPY
,
InnoDB
создает временную копию таблицы в том же самом каталоге,
где оригинальная таблица. Временные табличные имена файла начинаются с
префикса #sql-
и появляется кратко только во время выполнения
ALTER TABLE
.ALTER TABLE
восстанавливает таблицц InnoDB
, используя метод
ALGORITHM=INPLACE
(online DDL), InnoDB
создает
промежуточную копию таблицы в том же самом каталоге,
где и оригинальная таблица. Промежуточные табличные имена файла начинаются с
префикса #sql-ib
.ALTER TABLE
, которые
восстанавливают таблицы InnoDB
, используя метод
ALGORITHM=INPLACE
(online DDL) также создают временные файлы
сортировки во временном каталоге MySQL ($TMPDIR
в Unix,
%TEMP%
в Windows, или каталоге, определенном опцией
--tmpdir
). Если
временный каталог не является достаточно большим, чтобы содержать такие
файлы, Вы, возможно, должны реконфигурировать
tmpdir
.
Альтернативно, Вы можете определить отдельный временный каталог для
InnoDB
операций ALTER
TABLE
, используя опцию
innodb_tmpdir
. Эта опция была введена, чтобы помочь избежать
временных переполнений каталога, которые могли произойти в результате больших
временных файлов, создаваемых во время
ALTER TABLE
.
innodb_tmpdir
может быть сконфигурирована динамически, используя команды
SET GLOBAL
или
SET SESSION
.innodb_tmpdir
неприменима к промежуточным табличным файлам, которые всегда создаются в
том же самом каталоге, где оригинальная таблица.innodb_tmpdir
,
если у всех серверов есть та же самая окружающая среда операционной системы.
Иначе, мультиплицирование
innodb_tmpdir
может привести к отказу операций
ALTER TABLE
. Если операционные
среды серверов отличаются, рекомендуется сконфигурировать
innodb_tmpdir
на каждом сервере индивидуально.B.5.3.6.
Как защитить или изменить файл сокета Unix MySQL
/tmp/mysql.sock
. Для некоторых форматов дистрибутивов каталог
может отличаться, например, /var/lib/mysql
для RPM./tmp
или другом подобном каталоге, который используется для
временных файлов. Если файл сокета расположен в таком каталоге в Вашей
системе, это могло бы вызвать проблемы./tmp
так, чтобы файлы могли быть удалены только их владельцами
или суперпользователем (root
). Чтобы сделать это, установите
бит sticky
каталогу /tmp
, войдя в систему как
root
и применив такую команду:
shell> chmod +t /tmp
Вы можете проверить установлен ли бит sticky
, выполняя команду
ls -ld /tmp
. Если последний символ прав доступа
t
, значит бит установлен.
/etc/my.cnf
:
[mysqld]
socket=/path/to/socket
[client]
socket=/path/to/socket
--socket
в командной строке
mysqld_safe, когда Вы
выполняете программы клиента.MYSQL_UNIX_PORT
в путь к
файлу сокета Unix.
MYSQL_UNIX_ADDR
, когда Вы выполняете CMake
. См. раздел 2.8.4
.
shell> mysqladmin --socket=/path/to/socket version
B.5.3.7. Проблемы с зонами времени
SELECT NOW()
, возвращающем
значения в UTC, а не Вашем местном времени, Вы должны сказать серверу свою
зону текущего времени. То же самое применяется, если
UNIX_TIMESTAMP()
возвращает неправильное значение. Это должно быть сделано для среды, в
которой работает сервер, например, в
mysqld_safe
или mysql.server
. См. раздел
5.9.--timezone=
при вызове
mysqld_safe
. Вы можете также установить это, устанавливая переменную окружения
timezone_name
TZ
прежде, чем Вы запустите
mysqld.--timezone
или TZ
зависят от ОС. Консультируйтесь со своей
документацией на операционную систему, чтобы видеть, какие
значения являются приемлемыми.B.5.4. Связанные с запросом проблемы
B.5.4.1. Чувствительность к регистру в поиске строки
CHAR
,
VARCHAR
,
TEXT
) поиски строки используют
сопоставление операндов сравнения. Для двоичных строк
(BINARY
,
VARBINARY
,
BLOB
) сравнения используют числовые
значения байтов в операндах, это означает, что для буквенных символов
сравнения будут чувствительными к регистру.>=, >, =, <, <=
,
сортировка и группировка) основаны на сортировочном значении
каждого символа. Символы с тем же самым сортировочным значением обработаны
как тот же самый символ. Например, если e
и ц╘
имеют то же самое значение сортировки в данном сопоставлении, они
сравниваются как равные.latin1
и
latin1_swedish_ci
, таким образом, небинарные строковые сравнения
являются нечувствительными к регистру по умолчанию. Это означает что, если Вы
ищете с
, Вы получаете
все значения столбцов, которые начинаются с col_name
LIKE 'a%'A
или a
. Чтобы сделать этот поиск чувствительным к регистру, удостоверьтесь,
что у одного из операндов есть чувствительное к регистру или двоичное
сопоставление. Например, если Вы сравниваете столбец и строку, которые оба
имеют набор символов latin1
, Вы можете использовать оператор
COLLATE
, чтобы заставить любой операнд иметь сопоставление
latin1_general_cs
или latin1_bin
:
Если Вы хотите, чтобы столбец всегда был обработан чувствительным к регистру
способом, объявите его чувствительным к регистру или двоичным. См.
раздел 14.1.15.
col_name
COLLATE latin1_general_cs LIKE 'a%'
col_name
LIKE 'a%' COLLATE latin1_general_cs
col_name
COLLATE latin1_bin LIKE 'a%'
col_name
LIKE 'a%' COLLATE latin1_bin
COLLATE
с именем
сопоставления, нечувствительного к регистру. Строки в следующем примере
обычно являются чувствительными к регистру, но COLLATE
изменяет
сравнение, чтобы быть нечувствительным к регистру:
mysql> SET @s1 = 'MySQL' COLLATE latin1_bin,
-> @s2 = 'mysql' COLLATE latin1_bin;
mysql> SELECT @s1 = @s2;
+-----------+
| @s1 = @s2 |
+-----------+
| 0 |
+-----------+
mysql> SELECT @s1 COLLATE latin1_swedish_ci = @s2;
+-------------------------------------+
| @s1 COLLATE latin1_swedish_ci = @s2 |
+-------------------------------------+
| 1 |
+-------------------------------------+
Двоичная строка является чувствительной к регистру в сравнениях. Чтобы
сравнить строку как нечувствительную к регистру, преобразуйте ее в небинарную
строку и используйте COLLATE
, чтобы указать
нечувствительное к регистру сопоставление:
mysql> SET @s = BINARY 'MySQL';
mysql> SELECT @s = 'mysql';
+--------------+
| @s = 'mysql' |
+--------------+
| 0 |
+--------------+
mysql> SELECT CONVERT(@s USING latin1) COLLATE latin1_swedish_ci = 'mysql';
+--------------------------------------------------------------+
| CONVERT(@s USING latin1) COLLATE latin1_swedish_ci = 'mysql' |
+--------------------------------------------------------------+
| 1 |
+--------------------------------------------------------------+
Чтобы определить, сравнится ли значение как недвоичная или двоичная строка,
используйте функцию COLLATION()
. Этот пример показывает, что
VERSION()
возвращает
строку, у которой есть нечувствительное к регистру сопоставление, таким
образом, сравнения являются нечувствительными к регистру:
mysql> SELECT COLLATION(VERSION());
+----------------------+
| COLLATION(VERSION()) |
+----------------------+
| utf8_general_ci|
+----------------------+
Для двоичных строк значение сопоставления binary
, таким образом,
сравнения будут чувствительными к регистру. Один контекст, в котором Вы
будете видеть binary
, это для сжатия и функций шифрования,
которые возвращают двойные строки как правило:
mysql> SELECT COLLATION(ENCRYPT('x')), COLLATION(SHA1('x'));
+-------------------------+----------------------+
| COLLATION(ENCRYPT('x')) | COLLATION(SHA1('x')) |
+-------------------------+----------------------+
| binary | binary |
+-------------------------+----------------------+
Чтобы проверить значение сортировки строки, можно применить функцию
WEIGHT_STRING()
.
См. раздел 13.5.
B.5.4.2. Проблемы со столбцами DATE
DATE
'YYYY-MM-DD'
. Согласно стандарту SQL, не разрешен никакой другой
формат. Вы должны использовать этот формат в выражениях
UPDATE
и предложениях
WHERE
оператора
SELECT
. Например:
SELECT * FROM t1 WHERE date >= '2003-05-05';
Как удобство, MySQL автоматически преобразовывает дату в число, если дата
используется в числовом контексте и наоборот. MySQL также разрешает
строковый формат при обновлении и в предложении WHERE
, который
сравнивает дату со столбцами DATE
, DATETIME
или
TIMESTAMP
. Этот формат
означает, что любой символ пунктуации может использоваться в качестве
разделителя между частями. Например, '2004-08-15'
эквивалентно
'2004#08#15'
. MySQL может также преобразовать строку, не
содержащую разделителей (например, '20040815'
), если это имеет
смысл как дата.
DATE
,
TIME
,
DATETIME
или
TIMESTAMP
с постоянной строкой
с помощью операторов <
, <=
,
=
, >=
, >
или
BETWEEN
, MySQL обычно преобразовывает строку во внутреннее
длинное целое для более быстрого сравнения. Однако, это преобразование
подвергается следующим исключениям:DATE
, TIME
,
DATETIME
или
TIMESTAMP
с выражением.IN
или
STRCMP()
.'0000-00-00'
может быть
сохранена и получена как '0000-00-00'
. Когда дата
'0000-00-00'
используется через Connector/ODBC, она
автоматически преобразована в NULL
, потому что ODBC не может
обработать такую дату.idate
столбец типа
DATE
):
INSERT INTO t1 (idate) VALUES (19970505);
INSERT INTO t1 (idate) VALUES ('19970505');
INSERT INTO t1 (idate) VALUES ('97-05-05');
INSERT INTO t1 (idate) VALUES ('1997.05.05');
INSERT INTO t1 (idate) VALUES ('1997 05 05');
INSERT INTO t1 (idate) VALUES ('0000-00-00');
SELECT idate FROM t1 WHERE idate >= '1997-05-05';
SELECT idate FROM t1 WHERE idate >= 19970505;
SELECT MOD(idate,100) FROM t1 WHERE idate >= 19970505;
SELECT idate FROM t1 WHERE idate >= '19970505';
Однако, следующий запрос не работает:
SELECT idate FROM t1 WHERE STRCMP(idate,'20030505')=0;
STRCMP()
строковая функция, таким образом, это преобразовывает idate
в
строку в формате 'YYYY-MM-DD'
и выполняет строковое сравнение.
Это не преобразовывает '20030505'
в дату '2003-05-05'
и выполняет сравнение даты.
ALLOW_INVALID_DATES
, MySQL разрешает Вам хранить даты, которые прошли только
ограниченную проверку: MySQL требует только, чтобы день был в диапазоне от 1
до 31, и месяц находится в диапазоне от 1 до 12. Это делает MySQL очень
удобным для Веб-приложений, где Вы получаете год, месяц и день в трех
различных полях и хотите сохранить точно, что пользователь вставил (без
проверки допустимости даты).DATE
и знаете только часть
даты. Чтобы отвергнуть нулевые части месяца или дня в датах, включите режим
NO_ZERO_IN_DATE
.'0000-00-00'
). Это в некоторых случаях более удобно, чем
использование значений NULL
. Если дата, которая будет сохранена
в столбце DATE
не может быть
преобразована ни в какое разумное значение, MySQL запишет
'0000-00-00'
. Чтобы запретить '0000-00-00'
,
включите режим NO_ZERO_DATE
.IGNORE
) можно, задав системной
переменной sql_mode
значение "NO_ZERO_IN_DATE,NO_ZERO_DATE"
.B.5.4.3. Проблемы со значениями NULL
NULL
общий источник беспорядка для новичков
в SQL, которые часто думают, что NULL
та же самая вещь, что и
пустая строка ''
. Дело обстоит не так. Например, следующие
запросы абсолютно отличаются:
mysql> INSERT INTO my_table (phone) VALUES (NULL);
mysql> INSERT INTO my_table (phone) VALUES ('');
Оба запроса вставляют значение в столбец phone
, но первый
вставляет значение NULL
, а второй пустую строку. Значение
первого может быть расценено как "номер телефона неизвестен", а
второго как "человек, как известно, не имеет никакого телефона, и таким
образом никакого телефонного номера". Разница есть?
NULL
Вы можете использовать операторы
IS NULL
и
IS NOT NULL
, а
также функцию IFNULL()
.
NULL
никогда не истина по сравнению с любым
другим значением, даже с NULL
. Выражение, которое содержит
NULL
всегда производит NULL
, если иное не
обозначено явно в документации для операторов и функций, вовлеченных в
выражение. Все столбцы в следующем примере будут NULL
:
mysql> SELECT NULL, 1+NULL, CONCAT('Invisible',NULL);
Чтобы искать значения столбцов, которые являются NULL
, Вы не
можете использовать тест expr = NULL
. Следующее выражение не
возвращает строк, потому что expr = NULL
никогда не истина
для любого выражения:
mysql> SELECT * FROM my_table WHERE phone = NULL;
Чтобы найти значения NULL
, Вы должны использовать тест
IS NULL
. Следующие
запросы показывают, как найти телефонный номер NULL
и пустой номер телефона:
mysql> SELECT * FROM my_table WHERE phone IS NULL;
mysql> SELECT * FROM my_table WHERE phone = '';
NULL
, если Вы используете механизм хранения
MyISAM
, InnoDB
или MEMORY
. Иначе Вы
должны объявить индексированный столбец NOT NULL
и Вы не можете
вставить в него NULL
.LOAD DATA INFILE
пустые или
недостающие столбцы обновлены с значением ''
. Чтобы загрузить
значение NULL
в столбец, используйте в файле данных
\N
. Буквальное слово NULL
также может
использоваться при некоторых обстоятельствах. См.
раздел 14.2.6.DISTINCT
, GROUP BY
или ORDER
BY
, все значения NULL
расценены как равные.ORDER BY
, значения NULL
представлены
сначала, или последними, если Вы определяете DESC
.COUNT()
, MIN()
и
SUM()
) значения
NULL
игнорируют. Исключение:
COUNT(*)
, которая считает строки, а не отдельные значения
столбцов. Например, следующий запрос производит два результата. Первым
является количество строк в таблице, вторым является количество значений
не-NULL
в столбце age
:
mysql> SELECT COUNT(*), COUNT(age) FROM person;
NULL
особенны. Если Вы вставляете NULL
в столбец
TIMESTAMP
, реально вставятся
текущие дата и время. Если Вы вставляете NULL
в столбец целого
числа или с плавающей запятой, который имеет атрибут AUTO_INCREMENT
, следующее число в последовательности будет вставлено.B.5.4.4.
Проблемы с псевдонимами столбцов
GROUP BY
, ORDER BY
или HAVING
, чтобы обратиться к столбцу:
SELECT SQRT(a*b) AS root FROM
Стандартный SQL отвергает ссылки на псевдонимы столбца в предложении
tbl_name
GROUP BY root HAVING root > 0;
SELECT id, COUNT(*) AS cnt FROM tbl_name
GROUP BY id HAVING cnt > 0;
SELECT id AS 'Customer identity' FROM tbl_name
;
WHERE
. Это ограничение введено потому, что когда
WHERE
оценивается, значение столбца еще не могло быть
определено. Например, следующий запрос незаконен:
SELECT id, COUNT(*) AS cnt FROM
Предложение tbl_name
WHERE cnt > 0 GROUP BY id;
WHERE
определяет, какие строки должны быть включены
в предложение GROUP BY
, но это обращается к псевдониму значения
столбца, которое неизвестно, пока строки не будут выбраны и сгруппированы с
помощью GROUP BY
.
SELECT 1 AS `one`, 2 AS 'two';
В другом месте в запросе заключенные в кавычки ссылки на псевдоним должны
использовать заключение в кавычки идентификатора, или ссылка будет обработана
как буквальная строка. Например, этот запрос группирует значения в столбце
id
, на который ссылаются, псевдонимом `a`
:
SELECT id AS 'a', COUNT(*) AS cnt FROM
Но этот запрос группирует буквальной строкой tbl_name
GROUP BY `a`;
'a'
и не будет
работать как ожидалось:
SELECT id AS 'a', COUNT(*) AS cnt FROM
tbl_name
GROUP BY 'a';
B.5.4.5.
Проблема с отменой для нетранзакционных таблиц
ROLLBACK
, это означает, что одна
или больше таблиц, которые Вы использовали, не поддерживают транзакции:
Warning: Some non-transactional changed tables couldn't be rolled back
Эти таблицы не затронуты командой ROLLBACK
.
MyISAM
, которая является нетранзакционной.
SHOW TABLE STATUS LIKE '
См. разделы 14.7.5.36 и
14.7.5.10.
tbl_name
';
SHOW CREATE TABLE tbl_name
;
SHOW ENGINES;
См. раздел 14.7.5.16.
B.5.4.6.
Удаление строк из связанных таблиц
DELETE
для related_table
превышает 1MB (значение по умолчанию системной
переменной
max_allowed_packet
), Вы должны разделить это на меньшие части и
выполнить много запросов DELETE
.
Вы, вероятно, получаете самый быстрый DELETE
определяя только от 100 до 1000 значений
related_column
в запросе, если related_column
индексирован. Если related_column
не индексирован, скорость
независима от числа параметров в IN
.B.5.4.7.
Решение проблем с несоответствием строк
EXPLAIN
, чтобы выяснить, можете ли Вы найти что-то очевидно
неправильное. См. раздел 14.8.2.WHERE
.LIMIT 10
с этим запросом.SELECT
для столбца,
который должен был соответствовать строке таблицы, которая была последней
удалена из запроса.FLOAT
или
DOUBLE
с
десятичными числами, Вы не можете использовать равенство
(=
). Эта проблема распространена в большинстве машинных языков,
потому что не все значения с плавающей запятой могут быть сохранены точно.
В некоторых случаях изменение
FLOAT
на DOUBLE
поправит дело. См.
раздел B.5.4.8.mysql test <
query.sql
, это показывает Ваши проблемы. Вы можете создать
испытательный файл, выводя таблицы с
mysqldump --quick db_name
tbl_name_1
... tbl_name_n
>
query.sql. Откройте файл в редакторе, удалите некоторые
строки (если там более, чем необходимо, чтобы продемонстрировать проблему),
и добавьте Ваш запрос SELECT
в
конце тестового файла.
shell> mysqladmin create test2
shell> mysql test2 < query.sql
Присоедините испытательный файл к отчету об ошибках, который Вы можете
зарегистрировать, используя инструкции в
разделе 1.7.B.5.4.8.
Проблемы со значениями с плавающей запятой
FLOAT
и
DOUBLE
подвергаются этим проблемам. Для столбцов
DECIMAL
MySQL
выполняет операции с точностью 65 десятичных цифр, которые должны решить
наиболее распространенные проблемы погрешности.DOUBLE
показывает,
как вычисления, которые сделаны, используя операции с плавающей запятой,
приводят к ошибке с плавающей запятой.
mysql> CREATE TABLE t1 (i INT, d1 DOUBLE, d2 DOUBLE);
mysql> INSERT INTO t1 VALUES (1, 101.40, 21.40), (1, -80.00, 0.00),
-> (2, 0.00, 0.00), (2, -13.20, 0.00), (2, 59.60, 46.40),
-> (2, 30.40, 30.40), (3, 37.00, 7.40), (3, -29.60, 0.00),
-> (4, 60.00, 15.40), (4, -10.60, 0.00), (4, -34.00, 0.00),
-> (5, 33.00, 0.00), (5, -25.80, 0.00), (5, 0.00, 7.20),
-> (6, 0.00, 0.00), (6, -51.40, 0.00);
mysql> SELECT i, SUM(d1) AS a, SUM(d2) AS b
-> FROM t1 GROUP BY i HAVING a <> b;
+--+------+------+
| i| a | b |
+--+------+------+
|1 | 21.4 | 21.4 |
|2 | 76.8 | 76.8 |
|3 | 7.4 | 7.4 |
|4 | 15.4 | 15.4 |
|5 | 7.2 | 7.2 |
|6 |-51.4 | 0 |
+--+------+------+
Результат правилен. Хотя первые пять записей, похоже, не должны удовлетворить
сравнение (значения a
и b
не отличаются), они могут
сделать это, потому что различие между числами обнаруживается после десятого
знака или в зависимости от факторов, таких как архитектура системы, версия
компилятора или уровень оптимизации. Например, различные центральные
процессоры могут оценить числа с плавающей запятой по-другому.
d1
и d2
определены как
DECIMAL
вместо
DOUBLE
,
результат запроса SELECT
содержал бы только одну строку: последнюю из показанных выше.
mysql> SELECT i, SUM(d1) AS a, SUM(d2) AS b FROM t1
-> GROUP BY i HAVING ABS(a - b) > 0.0001;
+--+-------+---+
| i| a | b |
+--+-------+---+
|6 | -51.4 | 0 |
+--+-------+---+
1 row in set (0.00 sec)
Наоборот, чтобы получить строки, где числа те же самые, тест должен найти
различия в пределах значения терпимости:
mysql> SELECT i, SUM(d1) AS a, SUM(d2) AS b FROM t1
-> GROUP BY i HAVING ABS(a - b) <= 0.0001;
+--+------+------+
| i| a | b |
+--+------+------+
|1 | 21.4 | 21.4 |
|2 | 76.8 | 76.8 |
|3 | 7.4 | 7.4 |
|4 | 15.4 | 15.4 |
|5 | 7.2 | 7.2 |
+--+------+------+
5 rows in set (0.03 sec)
Значения с плавающей запятой подвергаются зависимостям от среды выполнения
или платформы. Предположите, что Вы выполняете следующие запросы:
CREATE TABLE t1(c1 FLOAT(53,0), c2 FLOAT(53,0));
INSERT INTO t1 VALUES('1e+52','-1e+52');
SELECT * FROM t1;
На некоторых платформах SELECT
вернет inf
и
-inf
. На других это возвращает
0
и -0
.
B.5.5. Проблемы с оптимизацией запросов
EXPLAIN
, чтобы получить информацию о том, как MySQL обрабатывает запрос.
Чтобы использовать это, только добавьте ключевое слово
EXPLAIN
в начало Вашего
запроса SELECT
:
mysql> EXPLAIN SELECT * FROM t1, t2 WHERE t1.i = t2.i;
ANALYZE TABLE
,
чтобы обновить ключевые распределения для просмотренной таблицы. См.
раздел 14.7.2.1.tbl_name
FORCE INDEX
, чтобы сказать MySQL, что
сканирование таблицы очень дорого по сравнению с использованием индекса:
SELECT * FROM t1, t2 FORCE INDEX (index_for_column)
WHERE t1.col_name=t2.col_name;
USE INDEX
и IGNORE INDEX
также могут быть полезны.
См. раздел 9.9.4.STRAIGHT_JOIN
. См.
раздел 14.2.9.--max-seeks-for-key=1000
или используйте SET max_seeks_for_key=1000
, чтобы
сказать оптимизатору предположить, что никакой ключевой просмотр не
просмотрит больше, чем 1000 ключей. См.
раздел 6.1.5.B.5.6. Проблемы определения таблиц
B.5.6.1. Проблемы с ALTER TABLE
ALTER TABLE
, чтобы изменить
набор символов или сопоставление символьного столбца, причина в том, что
новое сопоставление столбца отображает два ключа на то же самое значение или
таблица повреждена. В последнем случае Вы должны запустить
REPAIR TABLE
на таблице.
REPAIR TABLE
работает для
таблиц MyISAM
, ARCHIVE
и CSV
.ALTER TABLE
на транзакционной таблице или если Вы используете Windows,
ALTER TABLE
разблокирует
таблицу, если Вы сделали LOCK TABLE
для нее. Это сделано потому что InnoDB
и эти
операционные системы не могут удалить таблицу, которая используется.B.5.6.2.
Проблемы с таблицами TEMPORARY
TEMPORARY
:TEMPORARY
может иметь типы только
MEMORY
, MyISAM
,
MERGE
или InnoDB
.TEMPORARY
несколько раз в том же самом запросе. Например, следующее не работает:
mysql> SELECT * FROM temp_table, temp_table AS t2;
ERROR 1137: Can't reopen table: 'temp_table'
Эта ошибка также происходит, если Вы обращаетесь к временной таблице
многократно в сохраненной функции под различными псевдонимами, даже если
ссылки происходят в различных запросах в пределах функции.SHOW TABLES
не перечисляет таблицы TEMPORARY
.RENAME
, чтобы переименовать
таблицу TEMPORARY
. Однако, Вы можете использовать
ALTER TABLE
:
mysql> ALTER TABLE orig_name RENAME new_name;
ERROR 1137: Can't reopen table: '
temp_table
'
B.5.7. Известные проблемы в MySQL
IN
не столь
эффективна, как для =
.lower_case_table_names=2
(что позволяет MySQL помнить случай, используемый для баз данных и имен
таблиц), MySQL не помнит случай, используемый для имен базы данных для
функции DATABASE()
или в разных журналах (на нечувствительных к регистру системах).FOREIGN KEY
не работает в репликации,
потому что у ограничения может быть другое имя на ведомом устройстве.REPLACE
(и
LOAD DATA
с опцией
REPLACE
) не вызывает триггер
ON DELETE CASCADE
.DISTINCT
с ORDER BY
не работает внутри
GROUP_CONCAT()
,
если Вы не используете все и только те столбцы, которые
находятся в списке DISTINCT
.CREATE
TABLE ... SELECT
или INSERT
... SELECT
, которые вставляют ноль или значение
NULL
в столбец AUTO_INCREMENT
.DELETE
, если Вы удаляете строки
из таблицы, у которой есть внешние ключи со свойством
ON DELETE CASCADE
.REPLACE ... SELECT
,
INSERT IGNORE ... SELECT
, если у Вас есть двойные значения ключа
во вставленных данных.ORDER BY
, гарантирующего детерминированный порядок
.INSERT ...
SELECT
без ORDER BY
SELECT
может возвратить строки в
разном порядке, в зависимости от выбора, сделанного оптимизаторами на
ведущем и ведомом устройствах. Приведет это к разным значениями в столбце
AUTO_INCREMENT
на разных системах.InnoDB
на ведущем, но MyISAM
на ведомом, если у
ведомого устройства есть меньше доступного дискового пространства.key_buffer_size
и т.п. на ведущем и ведомом устройствах по-разному.ORDER BY
к вышеупомянутым недетерминированным запросам, чтобы
гарантировать, что строки всегда сохранены или изменяются в том же самом
порядке. Использование основанного на строке или смешанного формата
журналирования также избегает проблемы.
--log-bin=
.
См. раздел 6.1.4. Альтернативно,
переименуйте старые файлы, чтобы отразить Ваше изменение имени хоста. Если
они двоичные журналы, Вы должны отредактировать индексный файл журнала и
установить имена файлов системного журнала также и там.old_host_name
-binLOAD DATA INFILE
. См.
раздел 5.6.8.RENAME
не работает с таблицами TEMPORARY
или с
таблицами, примененными в MERGE
.SET CHARACTER SET
, Вы не можете использовать
преобразованные символы в именах базы данных, таблицы и столбцов._
или %
с
ESCAPE
в LIKE ... ESCAPE
.max_sort_length
байт, сравнивая значения данных. Это означает, что значения не могут
достоверно использоваться в GROUP BY
,
ORDER BY
или DISTINCT
, если они отличаются только
после первых
max_sort_length
байтов. Чтобы обойти это, увеличьте значение
переменной. Значение по умолчанию 1024, оно может быть изменено во время
запуска или выполнения сервера.BIGINT
или
DOUBLE
(оба обычно 64 бита длиной). Точность, которую Вы получаете, зависит от
функции. Общее правило состоит в том, что разрядные функции выполнены с
BIGINT
,
IF()
и
ELT()
с
BIGINT
или
DOUBLE
, а остальные
с DOUBLE
. Вы должны
попытаться избегать использования значений unsigned long long, если они могут
быть больше, чем 63 бита (9223372036854775807) для чего-нибудь,
кроме битовых полей.ENUM
и SET
в одной таблице.
MIN()
,
MAX()
и других совокупных
функциях MySQL в настоящее время сравнивает столбцы
ENUM
и
SET
их строковым значением, а не
относительной позицией строки в наборе.UPDATE
столбцы обновлены
слева направо. Если Вы обращаетесь к обновленному столбцу, Вы получаете
обновленное значение вместо оригинального значения. Например, следующии
запрос увеличивает KEY
на 2
, а
не на 1
:
mysql> UPDATE
tbl_name
SET KEY=KEY+1,KEY=KEY+1;
mysql> SELECT * FROM temp_table, temp_table AS t2;
ERROR 1137: Can't reopen table: 'temp_table'
DISTINCT
по-другому, когда Вы
используете столбцы hidden в join. В join столбцы
hidden посчитаны как часть результата (даже если их не показывают), тогда как
в нормальных запросах, такие столбцы не участвуют в сравнении DISTINCT
.
SELECT DISTINCT mp3id FROM band_downloads WHERE userid = 9 ORDER BY id DESC;
и
SELECT DISTINCT band_downloads.mp3id FROM band_downloads, band_mp3
WHERE band_downloads.userid = 9 AND
band_mp3.id = band_downloads.mp3id ORDER BY band_downloads.id DESC;
Во втором случае Вы можете получить две идентичных строки в наборе
результатов (потому что значения в скрытом столбце
id
могут отличаться).
ORDER BY
в результате.PROCEDURE
на запросе, который возвращает
пустой набор, в некоторых случаях PROCEDURE
не преобразовывает столбцы.MERGE
не проверяет, являются ли
основные таблицы совместимыми типами.ALTER TABLE
, чтобы добавить UNIQUE
индекс к таблице,
используемой в таблице MERGE
и затем добавляете нормальный
индекс к таблице MERGE
, ключевой порядок отличается для таблиц,
если были старые, не-UNIQUE
ключи в таблице. Это потому, что
ALTER TABLE
помещает индексы
UNIQUE
прежде нормальных, чтобы быть в состоянии обнаружить
дубликаты ключа как можно раньше.
Найди своих коллег! |
Вы можете
направить письмо администратору этой странички, Алексею Паутову.