win7 64位下如何安装配置mysql-5.7.18-m15-winx64
距离上次安装MySQL已经过去好久了。步骤这些,有可能会忘记。简单记录一下吧。(参考了一些网络上的博客。)
1.mysql-5.7.18-m15-winx64.zip下载
官方网站下载地址:http://cdn.mysql.com/Downloads/MySQL-5.7/
2.在D:\MySqlDataBase\mysql-5.7.18-m15-winx64下新建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.
[client]
default-character-set=utf8
[mysqld]
port=3306
basedir ="D:\MySqlDataBase\mysql-5.7.18-winx64/"
datadir ="D:\MySqlDataBase\mysql-5.7.18-winx64/data/"
tmpdir ="D:\MySqlDataBase\mysql-5.7.18-winx64/data/"
socket ="D:\MySqlDataBase\mysql-5.7.18-winx64/data/mysql.sock"
log-error="D:\MySqlDataBase\mysql-5.7.18-winx64/data/mysql_error.log"
#server_id = 2
#skip-locking
max_connections=100
table_open_cache=256
query_cache_size=1M
tmp_table_size=32M
thread_cache_size=8
innodb_data_home_dir="D:\MySqlDataBase\mysql-5.7.18-winx64/data/"
innodb_flush_log_at_trx_commit =1
innodb_log_buffer_size=128M
innodb_buffer_pool_size=128M
innodb_log_file_size=10M
innodb_thread_concurrency=16
innodb-autoextend-increment=1000
join_buffer_size = 128M
sort_buffer_size = 32M
read_rnd_buffer_size = 32M
max_allowed_packet = 32M
explicit_defaults_for_timestamp=true
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
#sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
####################配置文件结束###################
3.在windows系统环境变量path,加入如下内容
D:\mysql\mysql-5.7.18-winx64\bin;(注意加分号)
4、将mysql注册为windows系统服务
具体操作是在命令行中执行以下命令(需要以管理员身份运行命令行):
需要切换到bin目录,否则,会将服务目录指定为C:\Program Files\mysql-5.7.18-winx64\mysqld
增加服务命令:mysqld install MySQL --defaults-file="D:\mysql\mysql-5.7.18-winx64\my.ini"
移除服务命令为:mysqld remove
5.第4步成功后,打开系统服务管理
可以看到mysql系统服务
在命令行启动mysql命令为: net start mysql
关闭mysql命令为:net stop mysql
注意:如果server 无法start:
(MySQL 安装和启动服务,“本地计算机 上的 MySQL 服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。”)
执行命令:mysqld --initialize-insecure --user=mysql
net start mysq 可以看到服务启动了
7.修改root的密码为root
更改密码: update mysql.user set authentication_string=password('root') where user='root' and Host = 'localhost';
*特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了
而是将加密后的用户密码存储于authentication_string字段
命令行执行:mysql –u root
mysql>show databases;
mysql>use mysql;
mysql>update mysql.user set authentication_string=password('root') where user='root' and Host = 'localhost';
mysql> FLUSH PRIVILEGES;
mysql> QUIT
问题:
1045 access denied for user 'root'@'localhost' using password yes
解决:
1. 开始 -->cmd --> net stop mysql (停用MySQL服务 没启动的可以省略)
2. 找到安装路径 MySQL Server 5.1下的my.ini
3. 打开 my.ini 找到 [mysqld] 然后在下面加上
这句: skip_grant_tables (意思好像是 启动MySQL服务的时候跳过权限表认证 )
4. 然后就启动数据库修改密码了
开始 --> cmd --> net start mysql (启动MySQL服务)---> mysql 回车 ( 如果成功,将出现MySQL提示符)
5. 输入use mysql; (连接权限数据库)。
6. 改密码:update user set password=password("123") where user="root";(别忘了最后加分号) 。
7. 刷新权限(必须步骤):flush privileges; 。
8. 退出 quit。
9. 将第3 步的 my.ini里的 skip_grant_tables 去掉(启动MySQL服务的时候不能让他跳过权限表认证 )
10. 重启MySQL ,再进入,使用用户名root和刚才设置的新密码123就可以登录了。