初学数据库的时候,选择了比较常用的关系型数据库MySQL,和装其他软件时一样,在第一次搭建环境的时候,总会遇到各种各样的坑,在尝试了安装版和解压版的数据库之后,感觉mysql的解压版更加的简单方便,只要细心一些,按部就班,一定能够成功,在此将我的方法分享出来。这个方法真的屡试不爽(到目前为止还未出现不成功的情况)。
1、解压缩:将下载到的压缩包解压缩到自己喜欢的位置,例如我所解压的位置是D:\mysql-5.7.21-winx64
2、添加环境变量
在系统变量里添加MYSQL_HOME环境变量,变量值为MySQL的根目录,例如我的是D:\mysql-5.7.21-winx64
找到path,选择编辑,在原有值末尾添加;%MYSQL_HOME%\bin
3、添加配置文件my.ini 新建一个文本文件,修改后缀名为.ini,修改文件名称为my。具体的文件的内容为
[mysqld]
basedir=D:\mysql-5.7.21-winx64
datadir=D:\mysql-5.7.21-winx64\data
port = 3306
character_set_server=utf8
具体的变量basedir和datadir的值根据自己的数据库的路径来进行相应的修改
4、初始化数据库:
进入D:\mysql-5.7.21-winx64\bin目录,以管理员自身份打开CMD执行以下命令对数据库进行初始化操作(!!!!注意必须以管理员身份打开!!!!,否则报错)
mysqld --initialize --user=mysql --console
在控制台消息尾部会出现随机生成的初始密码,记下来(因为有特殊字符,很容易记错,最好把整个消息保存在记事本里)
D:\mysql-5.7.21-winx64\bin>mysqld --initialize --user=mysql --console
2020-02-24T01:55:54.613110Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2020-02-24T01:55:56.760808Z 0 [Warning] InnoDB: New log files created, LSN=45790
2020-02-24T01:55:57.332795Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2020-02-24T01:55:57.579793Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: cca0a644-56a8-11ea-ae7a-00ffdd4ac300.
2020-02-24T01:55:57.639204Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2020-02-24T01:56:01.995169Z 0 [Warning] CA certificate ca.pem is self signed.
2020-02-24T01:56:02.873238Z 1 [Note] A temporary password is generated for root@localhost: *t>->tJTf4Mf
此时*t>->tJTf4Mf就是数据库初始化时的密码,后续登陆时使用该密码进行登陆的操作。
5、将MySQL添加到系统服务
以管理员自身份打开CMD执行以下命令(!!!!注意必须以管理员身份打开,否则报错!!!!)
mysqld --install mysql
net start mysql
安装成功,则显示“服务已启动成功”
6、启动MySQL并修改密码
在CMD控制台里执行命令 mysql -u root -p
回车执行后,输入刚才记录的随机密码
输入命令set password for root@localhost = password('hahaha');
此时root用户的密码修改为hahaha
如果中途遇到什么问题,大家可以发送邮箱至jiankailv@foxmail.com ,大家共同学习,共同进步。