编辑mysql配置文件my.ini 可我的mysql里边没有my.ini

编辑mysql配置文件my.ini 可我的mysql里边没有my.ini,第1张

mysql 数据库的安装可以分为两种方式:解压方式和安装方式。

两者的区别在于:如果是安装方式,通常会运行一个 向导 程序,当按照向导,一步步完成,mysql 会配置完成,并生成 my.ini。

而 解压 方式,解压完成后,并没有 向导 程序,因此需要手动完成 mysql 的配置,配置文件 mysql 提供了一个缺省的文件,如下图:

将上面的 my-default.ini(由于系统的设置,没有显示 .ini 的扩展名),复制(或直接修改)名为 my.ini 的文件即可。

        打开cmd(记得”使用管理员身份“打开),如果没有配置环境变量,请cd(切换目录)到mysql程序下的bin文件夹下 执行命令  D:\mysql\mysql-5.7.29-winx64\bin "MySql"为服务名称,你的MysSql服务不一定是这个名称,可以打开电脑的服务窗口查看。 删除完成之后,最好去电脑的服务窗口看下,如果找不到MySql服务,说明已经已经删除成功。 如果还能看到MySql服务,可以手动右击选择”停止“,服务停止之后就会自动消失了。 在mysql程序的根目录下,新建一个my.ini空白文件,用记事本打开,将以下内容复制进去 # For advice on how to change settings please see # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html # *** DO NOT EDIT THIS FILE. It's a template which will be copied to the # *** default location during install, and will be replaced if you # *** upgrade to a newer version of MySQL. [client] default-character-set = utf8mb4 [mysql] default-character-set = utf8mb4 [mysqld] character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_bin init_connect='SET NAMES utf8mb4' # Remove leading # and set to the amount of RAM for the most important data # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%. innodb_buffer_pool_size = 128M # Remove leading # to turn on a very important data integrity option: logging # changes to the binary log between backups. # log_bin # These are commonly set, remove the # and set as required. basedir = D:\MySQL datadir = D:\MySQL\data port = 3306 # server_id = ..... # Remove leading # to set options mainly useful for reporting servers. # The server defaults are faster for transactions and fast SELECTs. # Adjust sizes as needed, experiment to find the optimal values. join_buffer_size = 128M sort_buffer_size = 16M read_rnd_buffer_size = 16M sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES其中basedir 和 datadir 根据实际MySql安装的位置进行修改。 删除之前生成的data文件,如果有重要的数据表,请先备份好。 回到cmd,重新生成data文件。在bin目录下运行: mysqld --initialize-insecure --user=mysql安装MySql服务,同时设置绑定my.ini配置文件。命令: mysqld --install"MySql" --defaults-file="d:/mysql/my.ini" “MySql”是服务名称,80表示8.0版本,当然,也可以自己取别的名字。 ”..\my.ini“是新建的配置文件的位置,也可以写成绝对路径”D:\MySql\my.ini“。 如果提示安装成功,这时打开电脑的”服务“窗口,可以找到新添加的MySql80服务: 这里有两种启动服务的方式:1)服务窗口启动;2)cmd启动 cmd方式:bin目录下执行命令 net start mysql 如果启动不成功 这时可能是my.ini配置文件中的某些配置有问题。你可以修改ini文件内容,然后从头按步骤再试一遍。 删除了data文件和服务之后,之前的密码就失效了,所以需要重新设置密码。 bin目录下执行命令 mysql -u root -p 这时密码为空,不需要填写,直接回车: 如果这里没有登陆成功 (敲黑板)这里有个需要注意的地方,在8.0之后的版本,修改root用户密码的命令是: ALTER USER'root'@'localhost'IDENTIFIED WITH mysql_native_password BY'你的密码' 之前的版本是: update mysql.usersetauthentication_string=password("你的密码")whereuser="root" 命令:mysql>exit 这里的命令和之前是一样的,就不写了,密码记得要填刚才设置的 如果修改后,重启服务报错 有一种可能:你修改的配置与服务初始化时的配置有冲突,这时只能从头开始,在初始化的时候绑定my.ini文件 。

这个是初始化文件,可能是下载文件时损坏了。

需要按照如下步骤修复:

重新下载mysql;

2. 解压缩文件;

3. 添加path环境变量,路径指向mysql所在bin目录下;

4. 在主目录下创建data文件夹;

5. 注册windows系统服务;

6.新建一个my.ini文件,拷贝到c:\windows目录下,内容如下:

[client]

port=3306

default-character-set=utf8

[mysqld] 

# 设置为MYSQL的安装目录 

basedir=C:\_04Tools\mysql-5.7.18-winx64

# 设置为MYSQL的数据目录 

datadir=C:\_04Tools\mysql-5.7.18-winx64\data

port=3306

character_set_server=utf8

sql_mode=NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER

#开启查询缓存

explicit_defaults_for_timestamp=true

7.打开cm的,进入mysql bin目录下,输入服务安装命令:

mysqld -install

如果出现Install/Remove of the Service Denied!,进入 C:\Window\System32  找到CMD.EXE 右键选择 以管理员身份 进行,再进入相应目录执行命令,一切就OK了。

8. 启动MySQL服务

命令:net start mysql。若报错,在data目录下找.rr文件查看具体错误信息。修复错误后记得将data目录下内容清空。若上述命令依然不成功可尝试 mysqld --initilize --user=mysql --datadir=data。

9. 修改root密码

set password for root@localhost = password('123')

修改密码成功后登录:mysql -u root -p, 输入password

重启服务后再次登录,成功。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5905204.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-07
下一篇 2023-03-07

发表评论

登录后才能评论

评论列表(0条)

保存