1. MySQL 安装
本文参考MySQL 8.0 Reference Manual编写。
MySQL下载
视本机具体情况选择下载,本次使用mysql-8.0.12-winx64.zip
MySQL安装包官网下载
1.1.1解压安装包
- 推荐使用7zip。
- 以管理员身份登陆电脑。
- 选择安装路径,一般来说,MySQL默认安装路径是
C:\mysql
.如果不安装在此目录下,则在启动过程中需要指定路径到安装目录下或者一个可选的文件中。详细见下一步“创建一个配置文件”。
默认MySQL安装路径是:C:\Program Files\MySQL.
1.1.2 创建一个配置文件(option file)
当你运行MySQL服务时,如果你需要指定启动配置,你可以在命令上或配置文件上指明配置。每次服务启动都需要使用配置,你会发现最方便的还是使用配置文件来声明MySQL的配置。尤其当一下情况发生时:- 安装或数据目录不再默认路径下 (C:\Program Files\MySQL\MySQL Server 8.0 and C:\Program Files\MySQL\MySQL Server 8.0\data).
- 你需要调服务的设置,比如内存,缓存或者innoDB 配置信息等。
当MySQL启动时,它会默认按照规定的目录中顺序寻找配置文件。
顺序按排列依次读取(files listed first are read first, files read later take precedence).。详细说明可参考[官方文档]。(https://dev.mysql.com/doc/refman/8.0/en/option-files.html )
Table 4.1 Option Files Read on Windows Systems
File Name | Purpose |
---|---|
%WINDIR%\my.ini, %WINDIR%\my.cnf | Global options |
C:\my.ini, C:\my.cnf | Global options |
BASEDIR\my.ini, | BASEDIR\my.cnf Global options |
defaults-extra-file | The file specified with –defaults-extra-file, if any |
%APPDATA%\MySQL.mylogin.cnf | Login path options (clients only) |
DATADIR\mysqld-auto.cnf | System variables persisted with SET PERSIST or |
- 可使用以下方法查看本地环境变量
echo %WINDIR%
echo %APPDATA%
使用MySQL 安装包安装时,它会创建 my.ini
文件在默认的位置。保证用户运行MySQL安装时对 my.ini
有所有的权限。用另一句话说,就是保证MySQL用户有权限读取文件 my.ini
。
1.2.1.1 将my.ini文件放在c:\\Windows\\my.ini
路径下
如果MySQL安装在 E:\mysql
,数据文件目录在E:\mydata\data
。my.ini
内容如下:
[mysqld]
# set basedir to your installation path
basedir=E:/mysql
# set datadir to the location of your data directory
datadir=E:/mydata/data
Windows 系统下路径使用斜杠/
或者双反斜杠(\\
)。
[mysqld]
# set basedir to your installation path
basedir=E:\\mysql
# set datadir to the location of your data directory
datadir=E:\\mydata\\data
1.2.2 选择MySQL服务类型
Binary | Description |
---|---|
mysqld | Optimized binary with named-pipe support |
mysqld-debug | Like mysqld, but compiled with full debugging and automatic memory allocation checking |
每个发布的服务支持同样的存储引擎(storage engines) ,详细可参考命令SHOW ENGINES。
1.2.3 MySQL特点
- symbolic linking of database directories. 软连接
- TCP/IP 默认使用,比name pipes 快。
- named pipes 不推荐,需手动开启,关闭sqlserver时可能会出现问题
1.2.3 初始化数据目录
1.2.3.1 使用mysqld 初始化数据目录。
- Windows下可使用
--initialize
.
cd BASEDIR
bin\mysqld --initialize --console 为默认用户root生产随机密码
bin\mysqld --initialize-insecure --console 不需要密码
如果使用
--iniitialize
运行完成随机密码会显示在屏幕上,类似如下。
[Warning] A temporary password is generated for root@localhost:
iTag*AfrH5ej 。
- Unix类系统可使用
--user
参数保证用户拥有生成的数据目录的读写权限。
shell> bin/mysqld --initialize --user=mysql
shell> bin/mysqld --initialize-insecure --user=mysql
mysql可声明
--defaults-file
默认加载配置文件路径。
--console
在Windows下输出直接打印在终端上,默认日志输出在错误日志(datadir/*.err
)。
启动MySQL服务。
C:> “C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld” –console
登陆mysql
使用
initialize
初始化登陆方法。shell> mysql -u root -p
Enter password: (enter the random root password here)使用
--initialize-insecure
的登陆方法。shell> mysql -u root –skip-password
登陆后修改用户密码
mysql> ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘new_password’;
退出 MySQL
shell>exit
1.2.4 首次启动MySQL服务
- 启动MySQL服务。
C:> “C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld” –console
mysqld 命令启动可选参数:
可选参数
--standalone and --debug options
C:\> "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld" --console
1.2.5 Windows命令行启动MySQL服务
启动MySQL服务。
C:> “C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld” –console关闭MySQL服务
C:\> "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqladmin" -u root shutdown
1.2.6 配置系统路径 方便MySQL工具
1.2.6.1 将MySQL目录添加至系统变量。
我的电脑->属性->高级系统设置->环境变量->系统变量
将MySQL安装目录添加到系统路径,如C:\Program Files\MySQL\MySQL Server 8.0\bin)
添加至path
的末尾。注意使用分号;
分隔。
%path%
;
C:\Program Files\MySQL\MySQL Server 8.0\bin
1.2.7. 安装MySQL服务作为Windows系统服务
- 将MySQL安装为Windows系统服务 。
C:> “C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld” –install
注意使用管理员身份运行CMD
- 将MySQL安装从Windows系统服务 移除。
C:> “C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld” –remove
- 安装为Windows服务后。打开CMD。可以使用启动或停止
net start/stop MySQL
。 - win+r 输入 services.msc。可以查看MySQL服务。
右键属性可配置启动方式,建议设置成自动。以后就不用手动启动MySQL服务了。