突然间,我的本地MySQL 5.5服务器在我的Windows XP SP3上停止运行。
我也安装了WAMP Apache和WAMP MySQL,但是WAMP MySQL没有运行。 错误日志显示:
我尝试将端口从3306更改为3307,但该服务仍然无法启动,出现错误:
事件查看器显示:
显然,如果服务器正在运行,我只能运行mysql_upgrade。 如果服务无法启动,如何创build“mysql.host”?
我卸载了MySQL服务器并重新安装了它,在安装后的configuration向导期间,我收到一个错误:服务无法启动。 错误:0。
我怎么从这里开始?
运行以下命令
mysql_install_db
在windows上启动之前初始化mysql。
mysqld --initialize
你需要做的第一件事是运行这些命令:
use mysql show tables;
请注意差异
MySQL 5.0在mysql模式中有17个表
+---------------------------+ | Tables_in_mysql | +---------------------------+ | columns_priv | | db | | func | | help_category | | help_keyword | | help_relation | | help_topic | | host | | proc | | procs_priv | | tables_priv | | time_zone | | time_zone_leap_second | | time_zone_name | | time_zone_transition | | time_zone_transition_type | | user | +---------------------------+
MySQL 5.1在mysql模式中有23个表
+---------------------------+ | Tables_in_mysql | +---------------------------+ | columns_priv | | db | | event | | func | | general_log | | help_category | | help_keyword | | help_relation | | help_topic | | host | | ndb_binlog_index | | plugin | | proc | | procs_priv | | servers | | slow_log | | tables_priv | | time_zone | | time_zone_leap_second | | time_zone_name | | time_zone_transition | | time_zone_transition_type | | user | +---------------------------+
MySQL 5.5在mysql模式中有24个表
+---------------------------+ | Tables_in_mysql | +---------------------------+ | columns_priv | | db | | event | | func | | general_log | | help_category | | help_keyword | | help_relation | | help_topic | | host | | ndb_binlog_index | | plugin | | proc | | procs_priv | | proxies_priv | | servers | | slow_log | | tables_priv | | time_zone | | time_zone_leap_second | | time_zone_name | | time_zone_transition | | time_zone_transition_type | | user | +---------------------------+
请注意,mysql.plugin在MySQL 5.0中不存在。 推测你以某种方式安装了MySQL 5.0并使MySQL 5.5的关键表消失是非常合理的。
这是一个好消息。 有什么可以尝试的。
对于这个例子
这是你的步骤
而已。
如果你在Windows中运行这个,那么同样的原则也适用。
试一试 !!!
美国东部时间2011-07-29 16:15
如果您的用户名拥有“数据库特定权限”,请按照以下步骤操作
该服务无法启动。 错误:0。
将MySQLpath添加到环境variables。
它看起来像你已经有MySQL运行
尝试
ps ax|grep mysql
如果你看到一些输出,可能你需要停止它(或重新启动框)。
如果你没有看到任何输出,请尝试运行mysqld而不要demonize并查看输出。
我已经添加了一个窗口标签来帮助人们回答这个问题。
我的背景是不是窗户,但校长适用。
有没有一个MySQL进程已经运行? 如果是这样,你需要在卸载之前杀死它。 如果在尝试卸载/重新安装时仍然在运行,则会有进程和文件四处停止,从而无法完全卸载。
打开服务窗口,在名称中查找与mysql有关的任何内容,并确保它设置为不尝试重新启动。 然后打开正在运行的程序窗口的正在运行的进程选项卡(使用CTRL-ALT-DEL打开),并使用名称中的mysql查找并终止正在运行的进程。
如果你满意,没有更多的运行mysql进程,你可以继续。 你可能想重新启动,以确保没有更多的运行mysql进程挂起。
这时你应该可以重新安装并启动mysql。
运行mysql-test-run,你应该看到下面的输出:
./mysql-test-run Logging: ./mysql-test-run 2013-09-14 03:39:32 2566 [Warning] Setting lower_case_table_names=2 because file system for /var/folders/fr/sn4l2f393_v_ytcwkb0lx7_40000gp/T/_M2mZFQPjV/ is case insensitive 2013-09-14 03:39:32 2566 [Note] Plugin 'FEDERATED' is disabled. 2013-09-14 03:39:32 2566 [Note] Binlog end 2013-09-14 03:39:32 2566 [Note] Shutting down plugin 'MyISAM' 2013-09-14 03:39:32 2566 [Note] Shutting down plugin 'CSV' MySQL Version 5.6.13 Checking supported features... - SSL connections supported Using suites: main,sys_vars,binlog,federated,rpl,innodb,innodb_fts,perfschema,funcs_1,opt_trace,parts,auth_sec Collecting tests... - adding combinations for binlog - adding combinations for rpl Removing old var directory... Creating var directory '/Users/das/mysql/mysql-5.6.13-osx10.7-x86_64/mysql-test/var'... Installing system database... Using server port 50409 ============================================================================== TEST RESULT TIME (ms) or COMMENT --------------------------------------------------------------------------
如果您移动数据目标,则不仅需要赋予新的数据目录权限,还需要确保所有父目录都具有权限。
我将我的datadir移动到一个硬盘上,安装在Ubuntu上:
/media/*user*/Data/
我的数据库是数据库 。
我必须将权限设置为771到每个媒体, 用户和数据目录:
sudo chmod 771 *DIR*
如果这不起作用,另一种可以让mysql工作的方式是将/etc/mysql/my.cnf中的用户更改为root用户; 尽pipe从安全的angular度来看,这是毫无疑问的。