`
supportopensource
  • 浏览: 521988 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Windows7下MySQL5.5.20免安装版的配置

 
阅读更多
MySQL Windows安装包说明:
1、mysql-5.5.20-win32.msi:Windows 安装包,图形化的下一步下一步的安装。
2、mysql-5.5.20.zip,这个是windows源文件,需要编译,对应的Linux源文件是mysql-5.5.20.tar.gz
3、mysql-5.5.20-win32.zip,这个文件解包后即可使用,是编译好的windows32位Mysql。


1、下载mysql-5.5.20-win32.zip,解压到D:\dev,D盘的dev文件夹下就会出现mysql-5.5.20-win32目录,将其重命名为mysql。

2、配置MYSQL的环境变量
新增系统变量MYSQL_HOME: D:\dev\mysql
在PATH变量的最后面添加: ;%MYSQL_HOME%\bin
保存即可。

3、打开文件my-default.ini另存为my.ini,删除my.ini中的所有配置,在my.ini文件中加入如下简单配置:(my.ini是保存在与my-default.ini同一个目录下的)(#表示注释)

# The following options will be passed to all MySQL clients
[client]
#password	= your_password
port		= 3306

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

# The MySQL server
[mysqld]
port		= 3306
#设置mysql的安装目录
basedir = D:\dev\mysql
#设置mysql数据库的数据存放目录,必须是data或者\xxx-data
datadir = D:\dev\mysql\data
#设置服务器段的字符集
character_set_server = utf8


4、注册服务
开始菜单,搜索cmd,单击右键“以管理员身份运行”,输入命令:
mysqld --install mysql5 --defaults-file=d:\dev\mysql\my.ini

(如果此时“出现Install/Remove of the Service Denied!”的错误,说明cmd不是以管理员身份运行)
或着,
开始菜单,搜索cmd,单击右键“以管理员身份运行”,输入命令:
mysqld --install mysql5


删除服务(开始菜单,搜索cmd,单击右键“以管理员身份运行”):
sc delete mysql5

在“服务”中就会出现mysql这一项。

5、启动服务(开始菜单,搜索cmd,单击右键“以管理员身份运行”):
net start mysql5

停止服务:
net stop mysql5


6、服务启动后:
登录MySQL服务器:
命令格式:
mysql -h hostname -u username -p


mysql -hhostname -uusername -p

命令说明:mysql命令将调用MySQL监视程序,这是一个可以将我们连接到MySQL服务器端的客户端命令行工具。
选项说明:
-h选项:用于指定所希望连接的主机,即运行MySQL服务器的机器。如果在运行MySQL服务器的机器上运行该命令,则可以忽略该选项和hostname参数;如果不是,必须用运行MySQL服务器的主机名称来代替主机名称参数。
-u命令:用于指定连接数据库时使用的用户名称。
-p命令:用于指定用户输入的密码

此时我本机安装了MYSQL,可忽略该选项和hostname参数:
mysql -uroot -p

注:
    MySQL的管理员用户名为root,密码默认为空

修改root密码
MySQL配置好后,启动成功,默认密码是空,但是为了安全,设置密码(MySQL有一个默认用户名为root,密码自己设定:假如设为root)。
1)登录MySQL root用户:
   打开命令行,执行:
mysql -uroot -p

2)修改root密码:
  
   mysql> update mysql.user set password="root" where User="root";
   mysql> flush privileges;
   

修改该修改密码的语句:update mysql.user set password="root" where User="root";
为: update mysql.user set password=password("root") where User="root";


详细说明:见最底下的补充说明。

以后再进入MySQL,则为:
mysql -uroot -proot



7、常用命令:
create database new_dbname;--新建数据库
show databases;--显示数据库
use databasename;--使用数据库
select database();--查看已选择的数据库

show tables;--显示当前库的所有表
create table tablename(fieldname1 fieldtype1,fieldname2 fieldtype2,..)[ENGINE=engine_name];--创建表
create table tablename select statement;--通过子查询创建表
desc tablename;--查看表结构
show create table tablename;--查看建表语句

alter table tablename add new_fielname new_fieldtype;--新增列
alter table tablename add new_fielname new_fieldtype after 列名1;--在列名1后新增列
alter table tablename modify fieldname new_fieldtype;--修改列
alter table tablename drop fieldname;--删除列
alter table tablename_old rename tablename_new;--表重命名

insert into tablename(fieldname1,fieldname2,fieldnamen) valuse(value1,value2,valuen);--增
delete from tablename [where fieldname=value];--删
update tablename set fieldname1=new_value where filename2=value;--改
select * from tablename [where filename=value];--查

truncate table tablename;--清空表中所有数据,DDL语句

show engines;--查看mysql现在已提供的存储引擎:
show variables like '%storage_engine%';--查看mysql当前默认的存储引擎
show create table tablename;--查看某张表用的存储引擎(结果的"ENGINE="部分)
alter table tablename ENGINE=InnoDB--修改引擎
create table tablename(fieldname1 fieldtype1,fieldname2 fieldtype2,..) ENGINE=engine_name;--创建表时设置存储引擎



8、例如:
(1)登录MySQL服务器后,查看当前时间,登录的用户以及数据库的版本
mysql> select now(),user(),version();
+---------------------+----------------+-----------+
| now()               | user()         | version() |
+---------------------+----------------+-----------+
| 2012-02-26 20:29:51 | root@localhost | 5.5.20    |
+---------------------+----------------+-----------+
1 row in set (0.00 sec)


(2)显示数据库列表
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.03 sec)


(3)新增数据库并查看
mysql> create database test_db;
Query OK, 1 row affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| test_db            |
+--------------------+
5 rows in set (0.00 sec)


(4)选择数据库
mysql> use test_db;
Database changed

查看已选择的数据库:
mysql> select database();
+------------+
| database() |
+------------+
| test_db    |
+------------+
1 row in set (0.00 sec)


(5)显示当前数据库的所有数据表
mysql> show tables;
Empty set (0.00 sec)


(6)新建数据表并查看
mysql> create table person(
    -> id int,
    -> name varchar(20),
    -> sex char(1),
    -> birth date
    -> );
Query OK, 0 rows affected (0.09 sec)

mysql> show tables;
+-------------------+
| Tables_in_test_db |
+-------------------+
| person            |
+-------------------+
1 row in set (0.00 sec)


(7)获取表结构
mysql> desc person;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(11)     | YES  |     | NULL    |       |
| name  | varchar(20) | YES  |     | NULL    |       |
| sex   | char(1)     | YES  |     | NULL    |       |
| birth | date        | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.01 sec)

或者
mysql> describe person;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(11)     | YES  |     | NULL    |       |
| name  | varchar(20) | YES  |     | NULL    |       |
| sex   | char(1)     | YES  |     | NULL    |       |
| birth | date        | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.01 sec)


(8)查询表中的数据
mysql> select * from person;
Empty set (0.00 sec)


(9)插入数据
mysql> insert into person(id,name,sex,birth)
    -> values(1,'zhangsan','1','1990-01-08');
Query OK, 1 row affected (0.04 sec)

查询表中的数据:
mysql> select * from person;
+------+----------+------+------------+
| id   | name     | sex  | birth      |
+------+----------+------+------------+
|    1 | zhangsan | 1    | 1990-01-08 |
+------+----------+------+------------+
1 row in set (0.00 sec)


(10)修改字段的类型
mysql> alter table person modify sex char(8);
Query OK, 1 row affected (0.17 sec)
Records: 1  Duplicates: 0  Warnings: 0

查看字段描述:
mysql> desc person;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(11)     | YES  |     | NULL    |       |
| name  | varchar(20) | YES  |     | NULL    |       |
| sex   | char(8)     | YES  |     | NULL    |       |
| birth | date        | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.01 sec)


(11)新增一个字段
mysql> alter table person add(address varchar(50));
Query OK, 1 row affected (0.27 sec)
Records: 1  Duplicates: 0  Warnings: 0

查看字段描述:
mysql> desc person;
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| id      | int(11)     | YES  |     | NULL    |       |
| name    | varchar(20) | YES  |     | NULL    |       |
| sex     | char(8)     | YES  |     | NULL    |       |
| birth   | date        | YES  |     | NULL    |       |
| address | varchar(50) | YES  |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+
5 rows in set (0.01 sec)


(12)更新字段内容
查看修改前表的内容:
mysql> select * from person;
+------+----------+------+------------+---------+
| id   | name     | sex  | birth      | address |
+------+----------+------+------------+---------+
|    1 | zhangsan | 1    | 1990-01-08 | NULL    |
+------+----------+------+------------+---------+
1 row in set (0.00 sec)


修改:
mysql> update person set name='lisi' where id=1;
Query OK, 1 row affected (0.04 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select * from person;
+------+------+------+------------+---------+
| id   | name | sex  | birth      | address |
+------+------+------+------------+---------+
|    1 | lisi | 1    | 1990-01-08 | NULL    |
+------+------+------+------------+---------+
1 row in set (0.00 sec)

mysql> update person set sex='man',address='China' where id=1;
Query OK, 1 row affected (0.04 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select * from person;
+------+------+------+------------+---------+
| id   | name | sex  | birth      | address |
+------+------+------+------------+---------+
|    1 | lisi | man  | 1990-01-08 | China   |
+------+------+------+------------+---------+
1 row in set (0.00 sec)



为了方便下面测试删除数据,在向person表中插入2条数据:
mysql> insert into person(id,name,sex,birth,address)
    -> values(2,'wangwu','man','1990-01-10','China');
Query OK, 1 row affected (0.02 sec)

mysql> insert into person(id,name,sex,birth,address)
    -> values(3,'zhangsan','man','1990-01-10','China');
Query OK, 1 row affected (0.04 sec)

mysql> select * from person;
+------+----------+------+------------+---------+
| id   | name     | sex  | birth      | address |
+------+----------+------+------------+---------+
|    1 | lisi     | man  | 1990-01-08 | China   |
|    2 | wangwu   | man  | 1990-01-10 | China   |
|    3 | zhangsan | man  | 1990-01-10 | China   |
+------+----------+------+------------+---------+
3 rows in set (0.00 sec)


(13)删除表中的数据
删除表中指定的数据:
mysql> delete from person where id=2;
Query OK, 1 row affected (0.02 sec)

mysql> select * from person;
+------+----------+------+------------+---------+
| id   | name     | sex  | birth      | address |
+------+----------+------+------------+---------+
|    1 | lisi     | man  | 1990-01-08 | China   |
|    3 | zhangsan | man  | 1990-01-10 | China   |
+------+----------+------+------------+---------+
2 rows in set (0.00 sec)

删除表中全部的数据:
mysql> delete from person;
Query OK, 2 rows affected (0.04 sec)

mysql> select * from person;
Empty set (0.00 sec)


(14)重命名表
查看重命名前的表名:
mysql> show tables;
+-------------------+
| Tables_in_test_db |
+-------------------+
| person            |
+-------------------+
1 row in set (0.00 sec)

重命名:
mysql> alter table person rename person_test;
Query OK, 0 rows affected (0.04 sec)

mysql> show tables;
+-------------------+
| Tables_in_test_db |
+-------------------+
| person_test       |
+-------------------+
1 row in set (0.00 sec)


(15)新增主键
mysql> alter table person_test add primary key(id);
Query OK, 0 rows affected (0.11 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc person_test;
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| id      | int(11)     | NO   | PRI | 0       |       |
| name    | varchar(20) | YES  |     | NULL    |       |
| sex     | char(8)     | YES  |     | NULL    |       |
| birth   | date        | YES  |     | NULL    |       |
| address | varchar(50) | YES  |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+
5 rows in set (0.00 sec)


删除主键:
mysql> alter table person_test drop primary key;
Query OK, 0 rows affected (0.18 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc person_test;
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| id      | int(11)     | NO   |     | 0       |       |
| name    | varchar(20) | YES  |     | NULL    |       |
| sex     | char(8)     | YES  |     | NULL    |       |
| birth   | date        | YES  |     | NULL    |       |
| address | varchar(50) | YES  |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+
5 rows in set (0.01 sec)


(16)删除表
mysql> drop table person_test;
Query OK, 0 rows affected (0.04 sec)

mysql> show tables;
Empty set (0.00 sec)


(17)删除数据库
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| test_db            |
+--------------------+
5 rows in set (0.00 sec)

mysql> drop database test_db;
Query OK, 0 rows affected (0.11 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.00 sec)


(18)查看建表语句
mysql> show create table table_name;



补充说明:
update mysql.user set password="root" where User="root";修改的不是密码,如果按照这个方式修改了,重新登录时将会报错:
mysql> update mysql.user set password="root" where User="root";
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3  Changed: 3  Warnings: 0

mysql> exit
Bye

C:\Users\liqiong>mysql -uroot -p
Enter password: ****
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: Y
ES)

请按照以下方式重新修改密码,即可登录成功:
C:\Users\liqiong>mysql -uroot
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.5.20 MySQL Community Server (GPL)

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> update mysql.user set password=password("root") where User="root";
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3  Changed: 3  Warnings: 0

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> exit
Bye

C:\Users\liqiong>mysql -uroot -p
Enter password: ****
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.5.20 MySQL Community Server (GPL)

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

分享到:
评论
6 楼 握着橄榄枝的人 2014-03-22  
我之前按照你的update mysql.user set password="root" where User="root";  操作导致Access denied for user ''@'localhost'”的错误!!!,我现在用你最后说明的方式修改不过来啊!

总是说
ERROR 1142 (42000): UPDATE command denied to user ''@'localhost' for table 'user
'
5 楼 skykingf 2013-07-10  
不注册成服务可以用吗?
4 楼 lalor 2013-05-07  
凭作者前面三句话也应该点个赞
3 楼 lsy 2012-10-20  
很好的文章!赞!
2 楼 supportopensource 2012-05-04  
akunamotata 写道
update mysql.user set password="root" where User="root"; 

这句密码设置有问题,密码根本不为root,会导致Access denied for user ''@'localhost'”的错误!!!


谢谢提醒,我已更正!
1 楼 akunamotata 2012-05-03  
update mysql.user set password="root" where User="root"; 

这句密码设置有问题,密码根本不为root,会导致Access denied for user ''@'localhost'”的错误!!!

相关推荐

    mysql5.5.20 64位详细安装文档

    MySQL 5.5.20 64位详细安装文档 MySQL 是一个开源的关系型数据库管理系统,广泛应用于各种领域。本文档将指导您详细安装 MySQL 5.5.20 64位版本。 一、安装前准备 在安装 MySQL 之前,需要准备好以下几个方面: 1...

    mysql5.5.20_win32

    在本案例中,"mysql5.5.20_win32" 指的是该版本的 MySQL 针对 Windows 32 位系统的安装程序。 1. **MySQL 简介**: MySQL 是由 Oracle 公司维护的开放源代码数据库管理系统,基于 SQL(Structured Query Language...

    mysql-5.5.20-win32.msi下载

    在本文中,我们将深入探讨MySQL 5.5.20在Windows 32位环境下的安装过程,以及它所包含的关键特性和改进。 MySQL 5.5系列是一个里程碑式的版本,因为它引入了许多性能提升和新功能。这个版本是为了解决日益增长的...

    MySQL_5.5.20_winx64安装包

    总的来说,MySQL 5.5.20在Windows 64位环境下提供了强大的数据库服务,是开发者和系统管理员的理想选择,特别是对于需要处理大量数据和高并发场景的应用。而提供的安装包和使用说明则使得部署和使用过程更加简单易行...

    MySQL5.5.20

    在下载的压缩包中,`mysql-5.5.20-win32.msi` 文件是 MySQL 5.5.20 的 Windows 安装程序,用户可以直接安装以使用该版本的 MySQL。`Readme.txt` 文件通常包含了安装指南、版本说明和其他重要信息,用户在安装前应...

    mysql-5.5.20-winx64

    本压缩包"mysql-5.5.20-winx64"提供了在Windows 64位操作系统上安装MySQL服务端和可视化界面所需的全部组件。 首先,MySQL 5.5.20引入了InnoDB存储引擎的重大改进,包括支持表空间压缩,这极大地减少了磁盘空间的...

    mysql5.5.20win64位.zip

    在下载的"mysql5.5.20win64位.zip"压缩包中,包含了安装MySQL 5.5.20的完整步骤。对于初学者来说,安装过程通常包括以下步骤: 1. **解压文件**:首先,需要将压缩包解压到本地硬盘的合适位置,创建一个用于存放...

    mysql-5.5.20-win32_sql安装包_sql_

    这个"mysql-5.5.20-win32"版本是专为Windows操作系统设计的,适用于那些需要在Windows环境下运行MySQL服务的用户。版本号5.5.20表示这是MySQL 5.5系列的一个特定发布,该系列在2010年首次推出,直至2018年才停止了...

    mysql5.5.20_win32.zip

    让我们深入探讨一下 MySQL 5.5.20 在 Win32 环境下的关键特性、安装与配置,以及相关的知识点。 1. **性能提升**:MySQL 5.5 版本着重提升了查询性能,尤其是对于复杂查询和大型数据集。InnoDB 存储引擎的改进,如...

    MySQL_5.5.20_winx64下载

    - **使用说明.txt**:这通常包含安装、配置和使用MySQL 5.5.20的步骤和注意事项,可能是官方文档的简化版或用户社区的总结。 安装MySQL 5.5.20时,用户需要按照“使用说明.txt”里的指导进行,确保正确配置服务器...

    MySQL_5.5.20_winx64.zip

    压缩包中的"mysql-5.5.20-winx64.msi"文件是MySQL的安装程序,它会引导用户完成MySQL服务器的安装过程,包括设置数据库的根用户密码、选择安装类型(如开发计算机、服务器计算机或集群)、以及配置服务器端的其他...

    mysql-5.5.20-win32.zip

    10. **Windows 安装程序**:文件“010-mysql-5.5.20-win32.msi”是 MySQL 在 Windows 上的安装程序,它简化了安装过程,帮助用户配置服务器设置、创建用户、设置数据目录等。 安装 MySQL 5.5.20 时,用户需要运行这...

    MySQL_5.5.20_winx64

    MySQL_5.5.20_winx64是一款专为64位Windows 7操作系统设计的MySQL数据库管理系统。MySQL是一个广泛使用的开源关系型数据库,它以其高效性、稳定性及易于管理的特点,在各种规模的企业和项目中都有应用。版本5.5.20是...

    mysql-5.5.20-winx86 32位机mysql安装包

    本文将详细解析“mysql-5.5.20-winx86”这个针对32位Windows系统的安装包,帮助您了解如何安装和配置MySQL 5.5.20。 MySQL 5.5版本是MySQL的一个重要里程碑,它在性能、稳定性和安全性上都有显著提升。5.5版本引入...

    MySQL_5.5.20_win32 安装板

    本文将详细讨论MySQL 5.5.20版本在Windows 32位系统上的安装过程,以及为何选择旧版本安装可能带来的优势。 首先,MySQL 5.5系列是一个重要的里程碑,因为它引入了许多性能优化和新特性。例如,它提升了InnoDB存储...

    mysql-essential-5.5.20 mysql的服务

    在本文中,我们将深入探讨MySQL服务的基本概念,以及如何在Windows操作系统上安装和管理MySQL 5.5.20。 一、MySQL服务的基本概念 MySQL服务是MySQL服务器的后台进程,它负责处理客户端的请求,执行SQL查询,并管理...

    MySQL-5.5.20

    安装MySQL通常涉及以下几个步骤:下载安装文件(如`mysql-5.5.20-winx64.msi`,这是Windows 64位系统的安装程序)、运行安装向导、配置服务器设置(如端口号、服务账户、数据目录等)、设定root用户的密码以及启动...

    MySQL_5.5.20_win32_WinBaiCai

    而"mysql-5.5.20-win32.msi"是实际的安装程序,通过这个文件,用户可以在Windows环境下安装MySQL 5.5.20版本。 总结来说,MySQL_5.5.20_win32_WinBaiCai是一个针对Windows平台的MySQL数据库服务,提供了性能优化、...

    mysql-5.5.20-win32图解详细安装.doc

    本文档详细介绍了如何在Windows上安装MySQL 5.5.20版本,包括安装步骤、配置选项以及后期的使用方法。 首先,安装开始时,你需要运行mysql-5.5.20-win32.msi安装文件。在初始界面,接受许可协议并继续。接着,你会...

Global site tag (gtag.js) - Google Analytics