https://www.cnblogs.com/lmh2072005/p/5656392.html
所有mysql的版本 https://downloads.mysql.com/archives/community/
问题一 : mysqld --initialize-insecure 出现错误
出现错误:
C:\D_software\mysql-5.7.13-winx64\bin>mysqld --initialize-insecure
2020-09-09T07:52:29.475218Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is
deprecated. Please use --explicit_defaults_for_timestamp server option (see doc
umentation for more details).
2020-09-09T07:52:29.477175Z 0 [ERROR] --initialize specified but the data direct
ory has files in it. Aborting.
2020-09-09T07:52:29.477175Z 0 [ERROR] Aborting
解决方法:
将my.ini中设置的datadir=
C:\wamp-all\sqldata 将sqldata中的内容删除再执行
mysqld --initialize-insecure
注意这句话是在命令行下执行的,而不是登陆进mysql>后
" 给用户设置一个密码:mysqladmin -u root -p password ,设置密码时发现报错:Access denied for user 'root'@'localhost' (using password: YES) "
这里错了之后使用这句话即可,不需要看后面的创建test用户部分。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
参考:
https://stackoverflow.com/questions/41645309/mysql-error-access-denied-for-user-rootlocalhost
问题二: 没有发现my-default.ini,那么my.ini放在那里?
答:就放在与bin/并列的目录,即与COPYING同一目录即可
问题三:执行net start mysql后,一般就能成功启动。然后通过mysql -u root 就能直接登录。这个时候没有设置密码
答:直接设置密码即可
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
这样设置的ch出来的密码就是: 'password'
如果执行 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456'; 这样就是123456
【原文如下】
----------------------------------------------------------------------------------------------我是分割线----------------------------------------------------------------------------------------------
为了防止上面的教程失效,https://www.cnblogs.com/lmh2072005/p/5656392.html,复制如下:
接着上几篇文章再来看下windows下安装mysql。 我这里是windows7 64位, 安装过程中还是遇到一些坑,这里记录下。
一、下载安装包
打开mysql官网下载页面:http://dev.mysql.com/downloads/mysql/
选择相应的版本和平台
这里选择的是5.7.13版本64位的 压缩包, 文件有310M比较大。
点击Download进入真正的下载页面,发现要登录才能下载 ,要细心点会发现下面有No thanks, just start my download. 就点这个链接就可以了。
下载解压到相应的目录,这里统一放在C:\wamp-all
解压后根据自己喜好文件夹改名字为mysql-5.7.13, 所有的mysql解压文件都在这个目录下了:C:\wamp-all\mysql-5.7.13
二、mysql配置
打开刚刚解压的文件夹C:\wamp-all\mysql-5.7.13 ,发现里面有my-default.ini配置文件,这个是默认的配置文件,复制一个自己的改名字为my.ini
编辑my.ini配置以下基本信息:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
三、安装启动mysql
用管理员身份打开cmd命令行工具,cd到解压文件的bin目录:C:\wamp-all\mysql-5.7.13\bin
输入mysqld install回车运行,出现安装成功就可以了。
输入net start mysql 启动mysql (或打开windows服务手动启动mysql)
在cmd里启动发现没法启动
网上搜索了下发现是5.7版本才有这个问题,要在bin目录下手动初始化data目录
cd到bin目录下先初始化
1. mysqld --initialize-insecure自动生成无密码的root用户,
2. mysqld --initialize自动生成带随机密码的root用户
这里选择1 mysqld --initialize-insecure
初始化后再运行net start mysql 成功启动mysql ..
四、进入mysql环境
1. cmd到bin目录下执行mysql -uroot (无需密码) ,
2. 给用户设置一个密码:mysqladmin -u root -p password ,设置密码时发现报错:Access denied for user 'root'@'localhost' (using password: YES)
是因为未给localhost root用户授权,这里新建一个用户,然后授权给他
create user 'test'@'localhost' identified by '你的密码';
grant all privileges on *.* to test@'localhost';
运行这两句sql语句,再次用test的身份输入密码进入
3. 在命令行输入:mysql -utest -p 回车 , 再输入刚刚设置的密码即可进入。
如果要退出sql环境回到正常的cmd环境,输入exit回车即可。 再次进入mysql 执行第3条即可。
五、执行sql语句
show databases; 可以看到默认的数据库
use mysql;
show tables;
select * from user;
......
六、 配置环境变量
如果不想每次都要cd到mysql的bin目录下,可以配置环境变量, cmd命令执行mysql指令的时候会去环境变量里面找对应的路径。
右键我的电脑->属性->高级系统设置->环境变量->path->编辑,将下载解压的mysql的bin目录的全路径放里面:C:\wamp-all\mysql-5.7.13\bin; 多个用分号隔开。
七、测试php连接数据库
$con = mysqli_connect("localhost","test","123456");
var_dump($con);
发现报错:Call to undefined function mysql_connect 没找到这个方法,在网上找了好几个方法,折腾了1个小时,最后发现是php配置的问题,extension_dir="ext" 改为绝对路径:extension_dir = "C:/wamp-all/php-5.6.23/ext" 重启apache即可。
参考Call to undefined function mysql_connect()之解决方法:http://www.blogjava.net/koradji/articles/336713.html
参考文档:
1. http://dev.mysql.com/downloads/file/?id=463242
2. http://jingyan.baidu.com/article/597035521d5de28fc00740e6.html
3. http://bbs.csdn.net/topics/391851148 //解决5.7启动问题
4. http://zhidao.baidu.com/link?url=J26PKMHhHv1fPpiPEwSCOSKMKhpdbgjOzwW6B6ZMk075FtzOE_nRcE982Zo_iTITd5zqCal0iZl7eWlhnpGM6w1ufuNUcEloYef-UVYvAWS