windows service安装mysql5.7

前言

上线生产环境后,由于数据字段默认值(0)未生效,导致了生产环境出了严重的BUG。但在准生产环境中测试的是比较充分的。最后思索可能是由于准生产环境与生产环境的数据库版本不一致造成的。果然,生产环境使用的版本是5.5,而准生产环境、开发环境我们使用的是5.7。只所以这么着,找借口的话就是由于当时安装的时间比较紧,真实的情况就是自己当时懒了。

安装

mysql5.7安装时,由于官网上供下载的只有压缩包版本的,所以并不是傻瓜程序。相信官方文档上也给出了详尽的教程。在此,我们参考了CSDN上的一篇文章:https://blog.csdn.net/u013235...

步骤总结如下:

  1. http://dev.mysql.com/download... 下载压缩包,并解压
  2. 根目录中,新建my.ini文件,进行个性化的配置。
  3. 使用管理员来启用cmd.exe(在system32中找到它,并右键管理身份运行)
  4. 在命令行环境下进入解压的根目录下的bin目录
  5. 初始化mysqld --initialize --user=mysql --console,并记录生成的root密码。
  6. 安装mysql服务mysqld –install mysql
  7. 启动服务net start mysql
  8. 登录:mysql -uroot -p,输入前面生成的密码。
  9. 修改密码:ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

注意:我并没有更改环境变量,这是由于我们并不需要在全局中来使用mysql命令。

如果不安装mysql服务,其实mysql也是可以用的。只是其不会伴随系统启动且不能够使用net start mysqlnet stop mysql等命令了。

my.ini

[client] 
# password       = your_password 
port            = 3307


# The MySQL server
[mysqld]
port= 3307


[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[isamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

批处理

如果你不想让mysql做为服务来启动(系统启动时,服务会自动开启,关闭服服务时,需要使用net stop mysql命令),那么可以忽略掉第5,6步。然后再根目录中建立一个批处理文件,以达到以后双击它便启动mysql的目的.

@echo off
cd /D %~dp0
echo Diese Eingabeforderung nicht waehrend des Running beenden
echo Please dont close Window while MySQL is running
echo MySQL is trying to start
echo Please wait  ...
echo MySQL is starting with my.ini (console)

bin\mysqld --defaults-file=my.ini --standalone --console

if errorlevel 1 goto error
goto finish

:error
echo.
echo MySQL konnte nicht gestartet werden
echo MySQL could not be started
pause

:finish

然后将其快捷方式发送到其它位置,双击就启动了mysql,关闭控制台,就停用了mysql

相关推荐