MySQL数据库管理软件有两种版本,一种是企业版,一种是社区版,其中,前者是收费的,如果是个人使用的,社区版足矣。下载mysql-5.7.17-winx64.zip,并将之解压于自己选定的目录后,如图1,会在文件夹里看到配置文件my-default.ini,此时,需将其复制,并粘贴进bin文件夹里,并将其重新命名为my.ini,如图2。至此准备工作完成,下面将详说具体的配置过程。

图1
图2

工具/原料

(1)电脑:Lenovo B460e;
(2)操作系统:windows 7,64位;
(3)mysql-5.7.17-winx64.zip。

方法/步骤

(1)配置系统环境变量;1、添加新的系统环境变量MYSQL_HOME,值为:

【C:\Program Files\MySQL\mysql-5.7.17-winx64】;

2、编辑系统环境变量path,添加如下代码(包括冒号“;”):【%MYSQL_HOME%\bin;】。

(2)根目录下的my-default.ini不动,配置bin文件夹中的my.ini,把my.ini文件中的内容改为如下内容:

my.ini:

# For advice on how to change settings please see# http://dev.mysql.com/doc/refman/5.7/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.[cilent]port=3306default_character_set=utf-8[mysqld]# 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 = %MYSQL_HOME%datadir = %MYSQL_HOME%dataport = 3306server_id = 10default_character_set = utf-8max_connections = 200# 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 = 512Msort_buffer_size = 8Mread_rnd_buffer_size = 8M sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

1.innodb_buffer_pool_size:个人建议设置为设置为操作系统内存的50%。如果设置过大,MySQL可能会 占用系统交换空间,导致系统变慢,从而降低查询效率;

2.basedir : 就是之前设置的环境变量;

3.server_id :关于主从复制的,应该是随便设, 但必须保持唯一;

4.datadir:后续初始化等数据都会保存在该文件下,该文件后续操作会自动建立;

5.port:连接数据库的端口号,3306即可,MySQL在线安装的默认就为3306;

6.最后三个参数大致也是各缓冲区大小,不太了解,只是在默认值上各个乘以了4(电脑性能好的可以高一点)。

(3)初始化数据库,配置相关信息以管理员身份运行命令行提示符(注意一定要以管理员身份运行,否则将没有权限对mysql进行配置)。

1.输入命令“mysqld install MySQL”,并按回车,如下图,表示MySQL安装成功。

这里写图片描述

2.输入命令“mysqld –initialize-insecure”,并按回车将自动生成无密码的root用户,而执行命令“mysqld –initialize”则会自动生成带随机密码的root用户(注意,是两个-),root用户的密码将会在后面设置。root(取名源于Linux)用户就是MySQL中的有超级管理权限的用户。

注:此过程在执行成功后,系统会在MySQL根目录中生成data文件夹。

这里写图片描述

3.输入命令“net start mysql”,并按回车,启动MySQL服务器;

这里写图片描述

(4)设置root用户的密码以管理员身份运行命令行提示符(注意一定要以管理员身份运行,否则将没有权限对mysql进行配置)。

1.检查MySQL服务器是否启动,如果启动,则输入命令“net stop mysql”,并按回车,停止MySQL服务器;

这里写图片描述

2.输入命令“mysqld –skip-grant-tables”,并按回车,注意,此命令不会启动MySQL服务器,至少,在任务管理器里看到MySQL服务器的状态是停止的;

这里写图片描述

3.以普通用户身份打开一个命令行窗口(如在运行窗口中直接输入cmd打开);

4.输入命令“mysql -u root -p”,并按回车,接着会提示输入密码,此时不需要输入密码而直接按回车即可;

这里写图片描述

5.进入数据库后,依次执行以下命令:

1)选择数据库:“use mysql;”

2)设置用户root的新密码为“123456”:

“update user set authentication_string=password(‘123456') where user='root';”;

4)退出MySQL:“exit;”。

这里写图片描述

6.打开任务管理器,点击“进程选项卡”,选择并结束进程mysqld.exe(注意:是进程而不是服务);

这里写图片描述

7.以用户/密码:root/123456,登录MySQL,如下图可知,MySQL登录成功。至此,root用户的密码设置结束。

这里写图片描述

注意事项(1)my.ini是放置在bin目录下,而不是和my-default.ini同在根目录下(我按照其他网友的方法放在根目录下时,初始化data文件会报找不到文件夹);

(2)有的教程说这里需要自己新建一个空的data文件夹,其实不必。官方文档有说明,后续步骤中有一步操作会自动建立data文件夹;

(3)在设置my.ini文件中的参数时,需删除所设置参数前面的#符;

(4)只有以管理员身份打开命令提示符窗口,才可在其中启动和停止MySQL服务器,以及对MySQL进行配置;

(5)命令“mysqld –skip-grant-tables”的作用是跳过权限安全检查,如此一来,会导致任何用户访问不做访问控制,当然也包括root用户,这样就可以在不输入密码的情况下登录MySQL并修改root用户的密码了。

(6)命令“mysqld –skip-grant-tables”会导致任何用户访问不做访问控制,即不用输入密码也可登录MySQL,而为了开启访问控制,可以通过命令”mysqladmin flush-privileges”或者”mysqladmin reload”来开启。或先以任意用户在不用密码的情况下登录进MySQL后,输入命令“flush privileges”,并执行,如此也可开启访问控制。

总结

更多相关文章

  1. Android(安卓)免安装应用
  2. linux下配置免安装版zabbix-agent配置详解
  3. java解压压缩包工具类
  4. android studio导入源码(来自github上下载的压缩包)
  5. Android(安卓)OpenCV_face使用OpenCV3.20的一个免安装OpenCV Man
  6. 准备你的应用(Android免安装应用)
  7. Android(安卓)只接读取压缩包里的内容(解决中文乱码)
  8. Android(安卓)解压中文乱码(压缩包内中文乱码)
  9. Android(安卓)SD卡中压缩包解压(ZIP文件)

随机推荐

  1. golang和go是什么关系
  2. golang如何连接数据库
  3. golang服务器有优势吗
  4. golang如何读取文件是否存在
  5. golang可以开发android吗
  6. Golang如何定义error
  7. Golang开发用什么IDE
  8. Golang判断文件是否能写入的方法
  9. golang可以调用lua吗?
  10. Golang如何打印单引号和双引号