Задавайте вопросы, мы ответим
Вы не зашли.
Всем привет!
После обновления fedora 14 до 15 при обращении к моим приложениям в браузере вылетает ошибка:
Fatal error: SQLSTATE[HY000]: General error: 1548 Cannot load from mysql.proc. The table is probably corrupted in /var/www/html/*.php on line 74
Не знаю правильно ли я понял что это означает проблемы с вложенными процедурами mysql, как можно справиться с этой ошибкой?
Неактивен
Пишет же таблица повреждена. Причем тут процедуры? fsck вам в помощь, проверяйте диск. Потом mysqlcheck на базу.
Неактивен
Две БД в которых есть вложенные процедуры отказываются работать и в mysql workbench при нажатии на крестик пишется fetching, а БД без процедур работают! С диском все ок, так как до переустановки ОС все было хорошо!
Неактивен
Вот mysqlcheck:
mysqlcheck Ver 2.5.0 Distrib 5.5.13, for Linux (i686)
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
This program can be used to CHECK (-c, -m, -C), REPAIR (-r), ANALYZE (-a),
or OPTIMIZE (-o) tables. Some of the options (like -e or -q) can be
used at the same time. Not all options are supported by all storage engines.
Please consult the MySQL manual for latest information about the
above. The options -c, -r, -a, and -o are exclusive to each other, which
means that the last option will be used, if several was specified.
The option -c will be used by default, if none was specified. You
can change the default behavior by making a symbolic link, or
copying this file somewhere with another name, the alternatives are:
mysqlrepair: The default option will be -r
mysqlanalyze: The default option will be -a
mysqloptimize: The default option will be -o
Usage: mysqlcheck [OPTIONS] database [tables]
OR mysqlcheck [OPTIONS] --databases DB1 [DB2 DB3...]
OR mysqlcheck [OPTIONS] --all-databases
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf
The following groups are read: mysqlcheck client
The following options may be given as the first argument:
--print-defaults Print the program argument list and exit.
--no-defaults Don't read default options from any option file.
--defaults-file=# Only read default options from the given file #.
--defaults-extra-file=# Read this file after the global files are read.
-A, --all-databases Check all the databases. This is the same as --databases
with all databases selected.
-a, --analyze Analyze given tables.
-1, --all-in-1 Instead of issuing one query for each table, use one
query per database, naming all tables in the database in
a comma-separated list.
--auto-repair If a checked table is corrupted, automatically fix it.
Repairing will be done after all tables have been
checked, if corrupted ones were found.
--character-sets-dir=name
Directory for character set files.
-c, --check Check table for errors.
-C, --check-only-changed
Check only tables that have changed since last check or
haven't been closed properly.
-g, --check-upgrade Check tables for version-dependent changes. May be used
with --auto-repair to correct tables requiring
version-dependent updates.
--compress Use compression in server/client protocol.
-B, --databases Check several databases. Note the difference in usage; in
this case no tables are given. All name arguments are
regarded as database names.
-#, --debug[=#] This is a non-debug version. Catch this and exit.
--debug-check Check memory and open file usage at exit.
--debug-info Print some debug info at exit.
--default-character-set=name
Set the default character set.
--default-auth=name Default authentication client-side plugin to use.
-F, --fast Check only tables that haven't been closed properly.
--fix-db-names Fix database names.
--fix-table-names Fix table names.
-f, --force Continue even if we get an SQL error.
-e, --extended If you are using this option with CHECK TABLE, it will
ensure that the table is 100 percent consistent, but will
take a long time. If you are using this option with
REPAIR TABLE, it will force using old slow repair with
keycache method, instead of much faster repair by
sorting.
-?, --help Display this help message and exit.
-h, --host=name Connect to host.
-m, --medium-check Faster than extended-check, but only finds 99.99 percent
of all errors. Should be good enough for most cases.
--write-binlog Log ANALYZE, OPTIMIZE and REPAIR TABLE commands. Use
--skip-write-binlog when commands should not be sent to
replication slaves.
(Defaults to on; use --skip-write-binlog to disable.)
-o, --optimize Optimize table.
-p, --password[=name]
Password to use when connecting to server. If password is
not given, it's solicited on the tty.
--plugin-dir=name Directory for client-side plugins.
-P, --port=# Port number to use for connection or 0 for default to, in
order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/services, built-in default (3306).
--protocol=name The protocol to use for connection (tcp, socket, pipe,
memory).
-q, --quick If you are using this option with CHECK TABLE, it
prevents the check from scanning the rows to check for
wrong links. This is the fastest check. If you are using
this option with REPAIR TABLE, it will try to repair only
the index tree. This is the fastest repair method for a
table.
-r, --repair Can fix almost anything except unique keys that aren't
unique.
-s, --silent Print only error messages.
-S, --socket=name The socket file to use for connection.
--ssl Enable SSL for connection (automatically enabled with
other flags).
--ssl-ca=name CA file in PEM format (check OpenSSL docs, implies
--ssl).
--ssl-capath=name CA directory (check OpenSSL docs, implies --ssl).
--ssl-cert=name X509 cert in PEM format (implies --ssl).
--ssl-cipher=name SSL cipher to use (implies --ssl).
--ssl-key=name X509 key in PEM format (implies --ssl).
--ssl-verify-server-cert
Verify server's "Common Name" in its cert against
hostname used when connecting. This option is disabled by
default.
--tables Overrides option --databases (-B).
--use-frm When used with REPAIR, get table structure from .frm
file, so the table can be repaired even if .MYI header is
corrupted.
-u, --user=name User for login if not current user.
-v, --verbose Print info about the various stages.
-V, --version Output version information and exit.
Variables (--variable-name=value)
and boolean options {FALSE|TRUE} Value (after reading options)
--------------------------------- ----------------------------------------
all-databases FALSE
all-in-1 FALSE
auto-repair FALSE
character-sets-dir (No default value)
compress FALSE
databases FALSE
debug-check FALSE
debug-info FALSE
default-character-set (No default value)
default-auth (No default value)
fast FALSE
fix-db-names FALSE
fix-table-names FALSE
force FALSE
extended FALSE
host (No default value)
write-binlog TRUE
plugin-dir (No default value)
port 0
quick FALSE
silent FALSE
socket (No default value)
ssl FALSE
ssl-ca (No default value)
ssl-capath (No default value)
ssl-cert (No default value)
ssl-cipher (No default value)
ssl-key (No default value)
ssl-verify-server-cert FALSE
use-frm FALSE
user (No default value)
Неактивен
продолжение:
bank.dannie OK
bank.kurspok OK
bank.kurspr OK
bank.user OK
chat.chat OK
ftp.users_table OK
ftp.xfer_errors OK
ftp.xfer_table OK
javasklad.attribute OK
javasklad.attribute_value OK
javasklad.group OK
javasklad.prodaja OK
javasklad.tovar OK
javasklad.user OK
javasklad.user_internet OK
mysql.columns_priv OK
mysql.db OK
mysql.event OK
mysql.func OK
mysql.general_log OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
mysql.ndb_binlog_index OK
mysql.plugin OK
mysql.proc
warning : 2 clients are using or haven't closed the table properly
status : OK
mysql.procs_priv OK
mysql.servers OK
mysql.slow_log OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
mysql.time_zone_name OK
mysql.time_zone_transition OK
mysql.time_zone_transition_type OK
mysql.user
warning : 1 client is using or hasn't closed the table properly
status : OK
tshirtshop.attribute OK
tshirtshop.attribute_value OK
tshirtshop.category OK
tshirtshop.department OK
tshirtshop.product OK
tshirtshop.product_attribute OK
tshirtshop.product_category OK
tshirtshop.shopping_cart OK
Неактивен
Это mysqlcheck или myisamchk? Во втором случае MySQL нужно предварительно
останавливать. Ну или пользоваться mysqlcheck
Неактивен
Это mysqlcheck вот с такими параметрами:
mysqlcheck --all-databases
Неактивен
Попробуйте mysqlcheck -rq mysql
Неактивен
mysqlcheck -rq mysql -p
Enter password:
mysql.columns_priv OK
mysql.db OK
mysql.event OK
mysql.func OK
mysql.general_log OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
mysql.ndb_binlog_index OK
mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
mysql.servers OK
mysql.slow_log OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
mysql.time_zone_name OK
mysql.time_zone_transition OK
mysql.time_zone_transition_type OK
mysql.user OK
Неактивен
воот, теперь proc починен и работает
Неактивен
Может быть он починен! Но ошибка осталась.
Неактивен
Точно такая же? Версия таблицы соответствует версии MySQL? Если обновляли —
делали ли mysql_upgrade?
Неактивен
Спасибо огромное!!! mysql_upgrade помог!
Неактивен