在Windows上手动安装MySql数据库

很少说什么了,直接上步骤。mysql

注:本文所使用MySql版本为:5.7.17-winx64sql

一、本文将mysql数据库程序解压在D:\wnmp\mysql目录下;数据库

二、在D:\wnmp\mysql目录下找到my-default.ini文件,复制一份并从新命名为my.ini;windows

三、用记事本打开my.ini,并修改basedir和datadir两项。命令行

basedir是mysql的安装目录,也就是刚才的解压出来的目录。code

datadir顾名思义,是mysql数据存放的位置。注:这个目录在basedir下没有,可是不须要手动建立。server

例如:进程

basedir = D:/wnmp/mysql
datadir = D:/wnmp/mysql/data

四、安装mysql服务ip

在有管理员权限的命令提示符下,将当前路径切换到mysql安装目录的bin目录下(或者mysqld命令使用全路径名),而后运行:string

mysqld --install

若是提示服务安装成功,那就是服务安装完成了。不过如今还不能启动服务,看下面。

说明:当未指定mysql启动加载的配置文件my.ini时,mysql会到这些目录里面去找,前后顺序以下:

C:\ProgramData\MySQL\MySQL Server 5.7\my.ini
C:\windows\my.ini
C:\my.ini
D:\wnmp\mysql\my.ini

五、初始化mysql

运行

mysqld --initialize

来初始化mysql数据库。

六、启动mysql服务

net start mysql

执行这个命令后,若是显示”MySQL 服务正在启动 .MySQL 服务已经启动成功。“那就是成功了。但是root的密码是什么呢?我也不知道,不过我能修改它。

若是提示:系统找不到指定的文件。请查看mysql服务的属性,确认“常规--可执行文件的路径”的路径地址是否正确。通常是没有将当前路径切换到mysql\bin下形成的。

若是提示:MySQL服务没法启动,服务没有报告任何错误。通常来讲是安装完服务,并无初始化。

七、修改root密码

执行

net stop mysql

停掉mysql服务。而后执行

mysqld --skip-grant-tables

这个命令。新开一个命令行窗口,使用

mysql -u root

登陆mysql以后运行下列sql命令:

use mysql;
select host,user,authentication_string,password_expired,password_last_changed from user;
update user set authentication_string=password('123456'),password_expired='N',password_last_changed=now() where user='root';
flush privileges;

退出mysql后,在进程管理器杀掉mysqld进程。OK!密码修改完成。

八、后序

从新启动mysql服务,经过验证密码登陆。登陆以后可使用下面命令修改密码。

mysql> set password=password('root');
Query OK, 0 rows affected, 1 warning (0.00 sec)

另,第7步修改密码的方法亦适用忘记mysql密码后的密码。

九、修改字符集

通过上面的操做,MySql5.7通常是可使用的,可是你极可能会遇到一个乱码的问题。这个问题是mysql如今使用的字符集的问题。登陆mysql后,使用show variables like "%char%";查看字符集也许是下面这个样子。

mysql> show variables like "%char%";
+--------------------------+----------------------------------------+
| Variable_name            | Value                                  |
+--------------------------+----------------------------------------+
| character_set_client     | gbk                                    |
| character_set_connection | gbk                                    |
| character_set_database   | latin1                                 |
| character_set_filesystem | binary                                 |
| character_set_results    | gbk                                    |
| character_set_server     | latin1                                 |
| character_set_system     | utf8                                   |
| character_sets_dir       | D:\Program Files\mysql\share\charsets\ |
+--------------------------+----------------------------------------+

修改字符集须要修改my.ini文件。打开my.ini,在里面加入下面的内容。

# 配置客户端的字符集
default-character-set=utf8

# 配置服务的字符集
character-set-server=utf8

若是my.ini文件中没有客户端的部分,即没有”[mysql]“部分,那么须要在客户端的配置的前面加上[mysql],就像下面同样。

[mysql]
default-character-set=utf8  # 配置客户端字符集

[mysqld]
basedir = "D:\Program Files\mysql"
datadir = "D:\Program Files\mysql\data"
port = 3306
default-storage-engine=INNODB
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 
character-set-server=utf8   # 配置服务端字符集

好了,如今从新启动mysql服务,而后再查看字符集试试。

mysql> show variables like "%char%";
+--------------------------+----------------------------------------+
| Variable_name            | Value                                  |
+--------------------------+----------------------------------------+
| character_set_client     | utf8                                   |
| character_set_connection | utf8                                   |
| character_set_database   | utf8                                   |
| character_set_filesystem | binary                                 |
| character_set_results    | utf8                                   |
| character_set_server     | utf8                                   |
| character_set_system     | utf8                                   |
| character_sets_dir       | D:\Program Files\mysql\share\charsets\ |
+--------------------------+----------------------------------------+

如今再去看看还有没有乱码吧。

相关文章
相关标签/搜索