免安装版MySQL的配置

一、MySQL下载地址

MySQL最新版下载地址:https://dev.mysql.com/downloads/mysql/

MySQL旧版本下载地址:https://downloads.mysql.com/archives/community/

在这里选择最新版的进行下载,点开链接,然后进行下载,如下图所示

 这里会提示要登录,直接点击 No thanks,just start my download. 进行下载就好了。

 对下载来的文件进行解压,会发现是没有my.ini文件的,这时候就需要自己创建一个my.ini文件。

 二、初始化my.ini文件

创建一个my.ini文件,内容如下

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录(自定义)
basedir=F:\data
# 设置mysql数据库的数据的存放目录(自定义)
datadir=F:\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=UTF8MB4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证(设置密码时需要)
default_authentication_plugin=mysql_native_password
# 开启二进制日志(若是没有则默认存放目录下)
# log_bin=E:\db_data
# 允许到处文件(null:不支持、/tmp:导出到指定地址、"":不做限制)
# secure_file_priv=F:\tmp
[mysql] # 设置mysql客户端默认字符集 default-character-set=UTF8MB4 [client] # 设置mysql客户端连接服务端时默认使用的端口 port=3306 default-character-set=UTF8MB4

根据上面的模板,让后创建一个my.ini文件,并对相关地址进行更改( 因为已安装过其他版本的mysql,所以这里使用3305端口(3306端口已被占用)),如下

 然后打开bin目录,在地址栏输入cmd打开dos系统,通过

mysqld --initialize --console

初始化my.ini文件 文件,如下图所示

这个密码在登录mysql时需要用到,只有先登录了,才能对密码进行更改~

三、注册服务

通过下面的语句

mysqld -install 服务名

来注册进服务里面(若是服务名不填,默认为MySQL)

然后就可以在服务里面看到已注册的MySQL8.0.26了,如下图所示

然后输入My,就可以看到M开头服务了,如下所示

四、更改密码

可以通过下面的语句(或者直接使用服务启动)

net start 服务名

启动mysql服务

启动服务后,就需要进行登录了。通过

mysql -u root -p

输入密码后进行登录(密码,就是初始化my.ini文件root@localhost后面的那一串)

登录成功后,如下图所示

 

 通过下面的语句更改初始密码

alter user root@localhost identified with mysql_native_password by '密码';

这里将密码更改成123456,如下图所示

 

更改成功后,使用新密码重新登录,如下图所示

 

至此,mysql免安装版的基础配置就完成啦 

五、重新初始化my.ini

先关闭服务,然后将my.ini初始化生成的文件删除掉(如:db_data)

 

停止mysql服务后,然后通过下面语句删除服务

mysqld -remove 服务名

删除掉之前初始化my.ini文件生成的文件夹,如下图

然后重新初始化my.ini文件 ,后面的步骤就跟上述的一样啦

 六、错误处理

1.当出现类似VCRUNTIME140.dll缺失时,请点击下方链接,安装VC运行库即可

最新:Latest supported Visual C++ Redistributable downloads | Microsoft Docs

2.当出现下面的情况的时候,请用管理员身份运行CMD即可

 3.当无法使用ip连接时

# 切换数据库
use mysql;

# 第一种,只更新root账号的
# ‘%':表示允许访问到mysql的ip地址,也可以配置为具体到ip名称,%表示所有ip均可以访问
update user set host='%' where user='root';
# 第二种,自定义一个用户名、ip、密码来访问,也就是创建一个账号
GRANT ALL PRIVILEGES ON *.* TO '用户名'@'ip' IDENTIFIED BY '密码' WITH GRANT OPTION;

# 刷新权限
flush privileges;

 

posted @ 2021-09-08 11:16  爱吃糖的橘猫  阅读(509)  评论(0编辑  收藏  举报