时间:2021-01-17 14:05:58 | 栏目:Mysql | 点击:次
一、安装
1、下载mysql
下载地址:链接地址
在浏览器打开网页后,下载如图所示压缩包
下载完成后将该压缩包进行解压,位置自定义,如:D:\Developer\mysql-8.0.13-winx64
2、配置文件
mysql8版本没有默认的my.ini文件,需要手动创建,该文件建在解压后的根目录下,如:D:\Developer\mysql-8.0.13-winx64
该文件内容如下:
[mysqld] # 设置3306端口 port=3306 # 设置mysql的安装目录 basedir=D:\\Developer\\mysql-8.0.13-winx64 # 设置mysql数据库的数据的存放目录 datadir=D:\Developer\mysql-8.0.13-winx64\data # 允许最大连接数 max_connections=200 # 允许连接失败的次数 max_connect_errors=10 # 服务端使用的字符集默认为UTF8 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB # 默认使用“mysql_native_password”插件认证 #mysql_native_password default_authentication_plugin=mysql_native_password [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [client] # 设置mysql客户端连接服务端时默认使用的端口 port=3306 default-character-set=utf8
3、数据库安装
3.1.进入bin目录
使用管理员权限打开cmd(注:必须使用管理员权限进行安装,否则会出问题。),然后进入到mysql安装目录的bin目录下,如图
3.2.初始化
接着输入mysqld --initialize --console命令,进行初始化,此时会出现如图所示界面
上图中红圈所圈为root账户及密码,密码是由mysql自动生成,且不带空格,首次登陆root用户需要使用,因此必须记住。如果没有记住,则需要将mysql安装目录data下的数据删掉,重新初始化。
3.3.执行安装命令
初始化完毕后,执行mysqld --install [服务名] (其中服务名可以不写,默认服务名是mysql)命令,安装mysql服务,如下图所示:
显示安装成功,则输入net start mysql启动服务,输入net stop mysql停止服务。
4、修改root账户密码
使用自动生成的密码有时候会很不方面,而且使用连接工具(如navicate)连接mysql时,可能会报密码过期,无法连接的问题,如图
因此最好在安装完成、启动服务后,修改root账户密码。
首先,mysql -u root -p,使用mysql生成的密码登录到root账户,如图
然后输入如下命令查看用户信息
select host,user,authentication_string from mysql.user;
如果root用户authentication_string字段下有内容,先将其设置为空;
update user set authentication_string='' where user='root'
最后输入如下命令,对密码进行修改,修改完成后,使用该密码再次进行登录。
alter user 'root'@'localhost' identified by '新密码';
重新登录后可以做创建新用户等操作,进行本地或远程开发。
创建用户命令
CREATE USER 'xxx'@'localhost' IDENTIFIED WITH mysql_native_password BY 'xxxxx';
如果是远程连接,可以对localhost进行修改。
注:不能使用 SET PASSWORD = PASSWORD(‘xxxx');命令进行密码修改,MySQL8使用了新的的密码认证插件,废弃了“mysql_native_password”,转而使用“caching_sha2_password”。
5、注意问题
如果在使用图行客户端连接mysql的root用户时报密码问题,则使用命令
select host,user,authentication_string,plugin from mysql.user;
查看root的加密plugin是否为caching_sha2_password,如果是这个插件,此时只需要再对root密码进行修改,命令如下:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
精彩专题分享: