如何在cmd中关闭Mysql

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在cmd中关闭Mysql相关的知识,希望对你有一定的参考价值。

如何在cmd中关闭mysql

参考技术A 1、确定你的mysql 是否能正常工作
登录数据库
cmd--“命令提示字符”窗口录入,
录入cd C:\mysql\bin
并按下回车键,将目录切换为 cd C:\mysql\bin
再键入命令mysql -uroot
-p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了。
MYSQL的提示符是:mysql>
2、显示数据库
使用这个 show databases;
看是否有返回值。
如果出错,那可能是的的mysql安装的有问题。
重新配置

在c:\windows\my.ini
看看
user=root
password=
这两项。

(3)
更改MySQL数据库目录
a) 打开cmd命令提示符窗口,输入命令:net stop mysql 停止MySQL服务运行;b)
打开X:\Server_Core\MySQL\my.ini,
找到:
Datadir =
“X:\Server_Core\MySQL\data”
修改为:
Datadir = “X:\Database”
c)
将X:\Server_Core\MySQL\data 文件夹复制到X:\,并重命名为X:\Database;
d)
打开cmd命令提示符窗口,输入命令:net start mysql 启动MySQL服务。
e) 重新测试MySQL是否工作正常。

(4)
准备LibMySQL动态链接库
将X:\Server_Core\MySQL\bin\libmySQL.dll 文件
复制到
C:\Windows\System32

当安装完MySql后,每次windows启动的时候都会将MySql服务启动起来.

如果是winxp则不需要使用管理员权限既可以很简单的打开和关闭,具体在cmd中敲入命令:

1.启动MySql服务: net start mysql

2.停止MySql服务: net stop mysql

但是在Win7或者是Vista中,启动普通的cmd来启动或者停止MySql服务是无法成功的,

提示:发生系统错误5,拒绝访问

因为没有使用管理员权限启动cmd.

因此可以通过使用管理员权限来启动cmd解决这个问题,具体可以见启动管理员CMD.

如何在 Rails 中关闭 MySQL 严格模式

【中文标题】如何在 Rails 中关闭 MySQL 严格模式【英文标题】:How to turn off MySQL strict mode in Rails 【发布时间】:2014-02-20 14:37:10 【问题描述】:

升级到 Rails 4 后,Rails 连接似乎默认开启 MySQL 严格模式。我这样说是因为我的 Rails 应用程序在保存超过 255 个字符的字符串值时收到“Mysql2::Error: Data too long for column”。然而,我将相同的查询粘贴到 MySQL 控制台(据报告全局严格模式已关闭),它工作正常,只是带有截断警告。作为进一步的证据,it says here“Rails 4 默认都使用严格模式”。

我的问题是如何从 Rails 应用程序中关闭严格模式?我宁愿现在避免升级所有东西来支持它。

【问题讨论】:

【参考方案1】:

您可以将其添加到您的 database.yml

变量: sql_mode: '传统'

变量: 严格模式:假

见:

https://github.com/rails/rails/pull/8346

【讨论】:

不幸的是,这不起作用。我尝试了innodb_strict_mode(这是实际变量),但是在保存记录时将其设置为“OFF”或 false 仍然会导致此错误。奇怪的是变量被识别了,因为如果我在同一个地方尝试任何随机变量名称,它会在 Rails 启动时引发异常。 为我工作。另请参阅github.com/rails/rails/issues/25924,了解 Rails 5 的最新变化。【参考方案2】:

@arya 的答案可能不起作用,因为'traditional' sql 模式严格的,如果你想将其设置为非严格,试试这个:

sql_mode: ''

希望有帮助

【讨论】:

从 Rails 4.2 开始为我工作。【参考方案3】:

试试这个:

# Set MySQL to clear sql mode for all connections
class ActiveRecord::ConnectionAdapters::MysqlAdapter 
  alias :connect_no_sql_mode :connect
  def connect
    connect_no_sql_mode
    execute("SET sql_mode = ''")
  end
end

【讨论】:

这是一个很好的起点,但会导致现代 Rails 出现错误。在我上面的答案中进行了修改。【参考方案4】:

按照@edubriguenti 的回答,I found this。在那里应用帖子和评论,我将以下内容添加到environment.rb,它看起来已经解决了问题。

# Set MySQL to clear sql mode for all connections
class ActiveRecord::ConnectionAdapters::Mysql2Adapter 
  alias :connect_no_sql_mode :connect
  def connect
    connect_no_sql_mode
    execute("SET sql_mode = ''")
  end
end

ActiveRecord::Base.connection.reconnect!

【讨论】:

仅供未来人们看到这一点,这有时对我在 Rails 4.0.3 上不起作用 - 在生产中,sql_mode 有时仍以某种方式设置为严格。我也会尝试在 database.yml 中设置它,也许他们修复了该设置。 好的。它在 4.1 beta 上对我有用。请使用 database.yml 的结果进行更新,因为我还没有尝试过,如果它有效,它显然更干净。 我开始遇到问题,它不再按预期进入严格模式。找到@nimblegorilla 的答案可以正常工作。【参考方案5】:

您可以使用strict: false 在您的database.yml 中设置严格模式,如下所示:

production:
  host: ...
  username: ...
  strict: false

https://api.rubyonrails.org/v4.2.8/classes/ActiveRecord/ConnectionAdapters/MysqlAdapter.html

【讨论】:

太好了,这对我有用并记录在案。看起来是正确的选择。 我同意,在我的代码上进行了测试,似乎是 rails 4 的正确选择,而不是 rails 3.2【参考方案6】:

mysql2 gem 公开了一个执行initial command on connect and reconnect 的选项。您可以在database.yml 内部设置init_command

production:
  host: ...
  username: ...
  init_command: "SET @@SESSION.sql_mode = ''"

【讨论】:

谢谢!这是唯一适用于 rails 3.2 应用程序的应用程序。 此解决方案也适用于 Rails 5.2 应用程序,如果您不想附加到当前 SQL 模式,而是想完全覆盖它

以上是关于如何在cmd中关闭Mysql的主要内容,如果未能解决你的问题,请参考以下文章

如何在 mariadb 中关闭自动提交?

从 .bat 文件中关闭打开的 cmd 窗口打开应用程序并执行文件

如何在线程中关闭 QWebSocket?

如何在 Swift 中关闭 ViewController?

如何在 DidSelectRow 中关闭 UIPopover?

如何在android中关闭AlertDialog