一、下载压缩包
说明:在Windows下,安装MySQL可以直接下载安装包(下载地址:https://dev.mysql.com/downloads/installer/),然后直接按照安装包的提示,安装自己需要的功能。也可以直接下载zip压缩包。该压缩包仅仅包含MySQL服务器需要的基本文件,没有可视化图形界面(下载地址:https://dev.mysql.com/downloads/mysql/)。 本文介绍通过安装包安装MySQL(社区版:8.0.12)。
二、MySQL服务的安装
解压压缩包
解压压缩包后,可以看到有如下文件及文件夹:
说明:解压后的文件及文件夹中,没有data目录,也没有.ini类型的配置文件。配置文件用于配置MySQL服务器的一些基本信息,包括启动时的端口,data目录用于存储MySQL服务器的数据库。
安装服务
若没有配置文件,可以自己创建文件名为my.ini的配置文件。
以管理员身份运行的方式打开命令行窗口(注意,一定要使用管理员的身份),将当前目录切换到MySQL的bin目录下(前面的bin目录,解压后的文件夹放在哪个目录下影响不大)。执行安装命令:
mysqld install MySql80
1
若想要卸载某个MySql服务,可以使用如下命令:
mysqld remove MySqll80
1
注意:后面的MySql80为MySql服务的名称,可以自己指定名称。若想要在一台机器上安装多个MySql服务,服务的名称必须各不相同。
初始化
安装之后,需要使用如下命令进行初始化:
mysqld --initialize --console
1
--console用于输出初始化时的一些信息,可以看到初始化时的一些基本信息,在输出的信息中,找到如下语句:可以看到账号的用户名为root,密码为随机生成的一个字符串。
A temporary password is generated for root@localhost: J-Wh5?#=<IFV
在后面可以使用该命令进行登录,不过需要修改密码才可以正常使用。
initialize用于初始化,也可以使用initialize-insecure,表示非安全模式,这样初始化之后账号的用户名为root,密码为空。
root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.
推荐使用initialize命令来进行初始化。初始化时data目录必须为空。
也可以添加其他参数来指定一些初始化参数。例如:
--defaults-file=来指定使用的配置文件。
启动MySQL服务
在命令行下输入一下命令来启动mysql服务,其中mysql80是前面安装的MySQL服务名称:
net start mysql80
1
若想要关闭服务,可以输入一下命令来关闭mysql服务:
net stop mysql80
1
注意:在前面安装初始化之后,并不会自动启动MySQL服务,需要自己手动启动MySQL服务。启动时在哪个目录下输入启动服务的命令都可以(因为net命令在任何目录下都可以使用,不是MySQL的命令)。
登录MySQL
命令:mysql -uroot -p
按回车之后然后会提示你输入密码:
也可以将密码直接填写在-p后面。例如:对于用户名为root,密码为abcd的账号,可以使用如下方式登录:
mysql -uroot -pabcd。注意:-u和用户名,-p和密码之间没有空格。
mysql的一些参数:
-u指定用户名。
-p指定密码。
-h指定主机地址。默认为localhost
-P指定端口号,默认为3306(mysql服务默认的启动端口为3306)。例如:-P13306表示连接端口号为13306的MySQL服务器。(注意:密码为小写的p,端口号为大写的P)
可以在配置文件中指定启动的端口号。
修改密码
登录之后,在输入命令时,前面的提示符为:mysql >在这后面输入的语句中,默认提交符号为分号(;)。按回车时只会换行,并不会提交语句。之后输入 ; 之后按回车才会提交语句。
如果前面对mysql进行初始化使用的是--initialize-insecure命令,则密码为空,在输入密码时直接按回车即可。登录之后,不用修改密码即可直接使用MySQL。例如:创建数据库等操作。
如果前面对mysql进行初始化使用的是--initialize命令,则密码为系统随机生成的一个字符串。登录之后需要修改密码才能使用。
若不修改密码,直接操作数据库,会出现如下错误:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
使用如下命令修改密码:
set password='new_password'注意:新的密码前后有单引号。在mysql中,单引号之间表示的是字符串。
alter user 'root'@'localhost' password expire never;设置密码永不过期。
flush privileges刷新权限。
之后退出(使用\q,或者exit或者quit都可以退出),然后重新登录即可。
至此,可以正常使用MySQL了。
三、多个MySQL的安装
若想要在一台机器上安装多个MySQL服务。可以将之前解压后的文件夹复制到其他目录下(注意:data需要为空,否则无法初始化)。然后按照前面的步骤安装MySQL服务。需要注意的有:
多个MySQL服务的名称不能相同。相同时无法安装成功
多个MySQL服务的端口号不能相同(可以在配置文件中配置端口号)。一个端口只能监听一个MySQL服务,因此端口号相同时只能启动一个MySQL服务。
四、修改配置文件
可以在配置文件中填写自己需要的服务器配置。(配置文件中 # 表示单行注释)
下面是几个基本的,当然你也可以让配置文件为空,让服务器使用默认的配置。可以参照官方文档填写自己需要的配置。
[mysqld]
# 指定mysql的安装目录
basedir=D:\BaiduYunDownload\mysql-8.0.12-winx64
# 指定mysql数据库的数据的存放目录data
datadir=D:\BaiduYunDownload\mysql-8.0.12-winx64\data
# 指定端口号
port=3306
# 设置允许的最大连接数
max_connections=200
其中,对于多个MySQL服务的安装最重要的就是指定端口号了。在安装时指定配置文件,若没有指定,默认为安装目录下的my.ini文件(与bin目录在同一个文件夹下)。对于端口号不在3306的MySQL服务,登录时需要添加-P来指定其端口号。