1.解压安装包(mysql-5.7.17-winx64)
2.在解压目录下创建my.ini
[client]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port=3306
character_set_server=utf8
# 解压目录
basedir=D:\lib\mysql
# 解压目录下data目录
datadir=D:\lib\mysql\data
default-storage-engine=INNODB
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[WinMySQLAdmin]
D:\lib\mysql\bin\mysqld.exe
4.安装MYSQL
(1)在解压目录的\bin下,用管理员权限打开cmd然后右击鼠标打开命令窗口
(2)执行命令初始化数据库
mysqld -install
mysqld --initialize --console
“mysqld --initialize --console”命令,可以得到mysql的初始密码,用mysqld --initialize 的目的是初始化data目录。要不然mysql5.7的解压文件夹下面不会出现data文件夹
比如本文中的初始密码为.ak8%if5#nzJ
接着就是在输入net start mysql启动服务
开始使用mysql,输入命令:mysql -uroot -p,然后输入刚才的初始密码
修改密码
旧版mysql:update user set authentication_string=password('新密码') where user='用户名'
新版mysql:alter user 'root'@'localhost' identified by '新密码';
flush privileges;
使用quit退出
输入命令:mysql -uroot -p,然后尝试新密码
如果使用初始密码不能登录进去修改密码
解决方法:mysql免密登录和修改密码
(1)停止mysql服务
windows: net stop mysql
linux(rpm): service mysql stop
mac: 系统偏好设置 -> 点开底部mysql -> stop mysql server
(2)跳过密码验证
由于mysqld –skip-grant-tables实测在mysql8.0中已失效,现使用mysqld --console --skip-grant-tables --shared-memory
再从新打开一个cmd窗口
(3)登录数据库
命令行输入mysql即可无密码进入数据库
(4)使用mysql数据库
use mysql;
show tables;
(5)更新用户密码
旧版mysql:update user set authentication_string=password('新密码') where user='用户名'
新版mysql:alter user 'root'@'localhost' identified by '新密码';
(6)刷新权限
flush privileges
(7)退出数据库
quit / exit
(8)删除配置文件中新添加的skip-grant-tables
(9)重启mysql服务
windows: net stop mysql net start mysql
linux: service mysql restart
mac: 系统偏好设置 -> 点击最下面的mysql -> 先关闭服务,再开始服务
如果启动不了,把阻塞的cmd窗口关闭,在启动
(10)使用用户名登录数据库
mysql -u 用户名 -p
附:如果想要免密登录数据库,把密码设置为空即可
使用service命令的前提是必须使用rpm安装mysql