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

时间:2022-09-22 07:37:12
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:\,D盘就会出现mysql-5.5.20-win32目录
目录层次不要过多
2、配置MYSQL的环境变量
新增系统变量MYSQL_HOME: D:\mysql-5.5.20-win32
在PATH变量的最后面添加: ;%MYSQL_HOME%\bin
保存即可。

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

Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. # The following options will be passed to all MySQL clients   
  2. [client]   
  3. #password   = your_password   
  4. port        = 3306  
  5. #设置mysql客户端的字符集   
  6. default-character-set = utf8   
  7.   
  8. # The MySQL server   
  9. [mysqld]   
  10. port        = 3306  
  11. #设置mysql的安装目录   
  12. basedir = D:\mysql-5.5.20-win32   
  13. #设置mysql数据库的数据存放目录,必须是data或者\xxx-data   
  14. datadir = D:\mysql-5.5.20-win32\data   
  15. #设置服务器段的字符集   
  16. character_set_server = utf8  


4、注册服务
运行-->cmd,输入命令:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysqld --install mysql --defaults-file=d:\mysql-5.5.20-win32\my.ini  

或着,
运行-->cmd,输入命令:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysqld --install mysql  


删除服务:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. sc delete mysql  

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

5、启动服务:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. net start mysql  

停止服务:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. net stop mysql  


6、服务启动后:
登录MySQL服务器:
命令格式:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql -h hostname -u username -p  


Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql -hhostname -uusername -p  

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

此时我本机安装了MYSQL,可忽略该选项和hostname参数:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql -uroot -p  

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

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

2)修改root密码:
  
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> update mysql.user set password="root" where User="root";   
  2. mysql> flush privileges;   

以后再进入MySQL,则为:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql -uroot -proot  



7、常用命令:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. show databases;--显示数据库   
  2. use databasename; --用数据库   
  3. show tables;--显示表   
  4. create table tablename(field-name-1 fieldtype-1 modifiers,field-name-2 fieldtype-2 modifiers,....);--创建表   
  5. alter table tablename add new-fielname new fieldtype--为表加入新列   
  6. insert into tablename(fieldname-1,fieldname-2,fieldname-n)valuse(value-1,value-2,value-n)--增   
  7. delete from tablename where fieldname=value--删   
  8. update tablename set fieldname=new-value where id=1--改   
  9. select * from tablename--查   
  10. desc tablename--表定义描述   
  11. show create table tablename--可以查看引擎   
  12. alter table tablename engine=InnoDB--修改引擎   
  13. create table tablename(id int(11),name varchar(10) )type=INNODB--建表是设置引擎  



8、例如:
(1)登录MySQL服务器后,查看当前时间,登录的用户以及数据库的版本
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> select now(),user(),version();   
  2. +---------------------+----------------+-----------+   
  3. | now()               | user()         | version() |   
  4. +---------------------+----------------+-----------+   
  5. 2012-02-26 20:29:51 | root@localhost | 5.5.20    |   
  6. +---------------------+----------------+-----------+   
  7. 1 row in set (0.00 sec)  


(2)显示数据库列表
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> show databases;   
  2. +--------------------+   
  3. | Database           |   
  4. +--------------------+   
  5. | information_schema |   
  6. | mysql              |   
  7. | performance_schema |   
  8. | test               |   
  9. +--------------------+   
  10. 4 rows in set (0.03 sec)  


(3)新增数据库并查看
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> create database test_db;   
  2. Query OK, 1 row affected (0.00 sec)   
  3.   
  4. mysql> show databases;   
  5. +--------------------+   
  6. | Database           |   
  7. +--------------------+   
  8. | information_schema |   
  9. | mysql              |   
  10. | performance_schema |   
  11. | test               |   
  12. | test_db            |   
  13. +--------------------+   
  14. 5 rows in set (0.00 sec)  


(4)选择数据库
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> use test_db;   
  2. Database changed  

查看已选择的数据库:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> select database();   
  2. +------------+   
  3. | database() |   
  4. +------------+   
  5. | test_db    |   
  6. +------------+   
  7. 1 row in set (0.00 sec)  


(5)显示当前数据库的所有数据表
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> show tables;   
  2. Empty set (0.00 sec)  


(6)新建数据表并查看
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> create table person(   
  2.     -> id int,   
  3.     -> name varchar(20),   
  4.     -> sex char(1),   
  5.     -> birth date   
  6.     -> );   
  7. Query OK, 0 rows affected (0.09 sec)  

Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> show tables;   
  2. +-------------------+   
  3. | Tables_in_test_db |   
  4. +-------------------+   
  5. | person            |   
  6. +-------------------+   
  7. 1 row in set (0.00 sec)  


(7)获取表结构
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> desc person;   
  2. +-------+-------------+------+-----+---------+-------+   
  3. | Field | Type        | Null | Key | Default | Extra |   
  4. +-------+-------------+------+-----+---------+-------+   
  5. | id    | int(11)     | YES  |     | NULL    |       |   
  6. | name  | varchar(20) | YES  |     | NULL    |       |   
  7. | sex   | char(1)     | YES  |     | NULL    |       |   
  8. | birth | date        | YES  |     | NULL    |       |   
  9. +-------+-------------+------+-----+---------+-------+   
  10. 4 rows in set (0.01 sec)  

或者
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> describe person;   
  2. +-------+-------------+------+-----+---------+-------+   
  3. | Field | Type        | Null | Key | Default | Extra |   
  4. +-------+-------------+------+-----+---------+-------+   
  5. | id    | int(11)     | YES  |     | NULL    |       |   
  6. | name  | varchar(20) | YES  |     | NULL    |       |   
  7. | sex   | char(1)     | YES  |     | NULL    |       |   
  8. | birth | date        | YES  |     | NULL    |       |   
  9. +-------+-------------+------+-----+---------+-------+   
  10. 4 rows in set (0.01 sec)  


(8)查询表中的数据
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> select * from person;   
  2. Empty set (0.00 sec)  


(9)插入数据
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> insert into person(id,name,sex,birth)   
  2.     -> values(1,'zhangsan','1','1990-01-08');   
  3. Query OK, 1 row affected (0.04 sec)  

查询表中的数据:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> select * from person;   
  2. +------+----------+------+------------+   
  3. | id   | name     | sex  | birth      |   
  4. +------+----------+------+------------+   
  5. |    1 | zhangsan | 1    | 1990-01-08 |   
  6. +------+----------+------+------------+   
  7. 1 row in set (0.00 sec)  


(10)修改字段的类型
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> alter table person modify sex char(8);   
  2. Query OK, 1 row affected (0.17 sec)   
  3. Records: 1  Duplicates: 0  Warnings: 0  

查看字段描述:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> desc person;   
  2. +-------+-------------+------+-----+---------+-------+   
  3. | Field | Type        | Null | Key | Default | Extra |   
  4. +-------+-------------+------+-----+---------+-------+   
  5. | id    | int(11)     | YES  |     | NULL    |       |   
  6. | name  | varchar(20) | YES  |     | NULL    |       |   
  7. | sex   | char(8)     | YES  |     | NULL    |       |   
  8. | birth | date        | YES  |     | NULL    |       |   
  9. +-------+-------------+------+-----+---------+-------+   
  10. 4 rows in set (0.01 sec)  


(11)新增一个字段
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> alter table person add(address varchar(50));   
  2. Query OK, 1 row affected (0.27 sec)   
  3. Records: 1  Duplicates: 0  Warnings: 0  

查看字段描述:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> desc person;   
  2. +---------+-------------+------+-----+---------+-------+   
  3. | Field   | Type        | Null | Key | Default | Extra |   
  4. +---------+-------------+------+-----+---------+-------+   
  5. | id      | int(11)     | YES  |     | NULL    |       |   
  6. | name    | varchar(20) | YES  |     | NULL    |       |   
  7. | sex     | char(8)     | YES  |     | NULL    |       |   
  8. | birth   | date        | YES  |     | NULL    |       |   
  9. | address | varchar(50) | YES  |     | NULL    |       |   
  10. +---------+-------------+------+-----+---------+-------+   
  11. 5 rows in set (0.01 sec)  


(12)更新字段内容
查看修改前表的内容:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> select * from person;   
  2. +------+----------+------+------------+---------+   
  3. | id   | name     | sex  | birth      | address |   
  4. +------+----------+------+------------+---------+   
  5. |    1 | zhangsan | 1    | 1990-01-08 | NULL    |   
  6. +------+----------+------+------------+---------+   
  7. 1 row in set (0.00 sec)  


修改:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> update person set name='lisi' where id=1;   
  2. Query OK, 1 row affected (0.04 sec)   
  3. Rows matched: 1  Changed: 1  Warnings: 0  
  4.   
  5. mysql> select * from person;   
  6. +------+------+------+------------+---------+   
  7. | id   | name | sex  | birth      | address |   
  8. +------+------+------+------------+---------+   
  9. |    1 | lisi | 1    | 1990-01-08 | NULL    |   
  10. +------+------+------+------------+---------+   
  11. 1 row in set (0.00 sec)   
  12.   
  13. mysql> update person set sex='man',address='China' where id=1;   
  14. Query OK, 1 row affected (0.04 sec)   
  15. Rows matched: 1  Changed: 1  Warnings: 0  
  16.   
  17. mysql> select * from person;   
  18. +------+------+------+------------+---------+   
  19. | id   | name | sex  | birth      | address |   
  20. +------+------+------+------------+---------+   
  21. |    1 | lisi | man  | 1990-01-08 | China   |   
  22. +------+------+------+------------+---------+   
  23. 1 row in set (0.00 sec)  



为了方便下面测试删除数据,在向person表中插入2条数据:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> insert into person(id,name,sex,birth,address)   
  2.     -> values(2,'wangwu','man','1990-01-10','China');   
  3. Query OK, 1 row affected (0.02 sec)   
  4.   
  5. mysql> insert into person(id,name,sex,birth,address)   
  6.     -> values(3,'zhangsan','man','1990-01-10','China');   
  7. Query OK, 1 row affected (0.04 sec)   
  8.   
  9. mysql> select * from person;   
  10. +------+----------+------+------------+---------+   
  11. | id   | name     | sex  | birth      | address |   
  12. +------+----------+------+------------+---------+   
  13. |    1 | lisi     | man  | 1990-01-08 | China   |   
  14. |    2 | wangwu   | man  | 1990-01-10 | China   |   
  15. |    3 | zhangsan | man  | 1990-01-10 | China   |   
  16. +------+----------+------+------------+---------+   
  17. 3 rows in set (0.00 sec)  


(13)删除表中的数据
删除表中指定的数据:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> delete from person where id=2;   
  2. Query OK, 1 row affected (0.02 sec)   
  3.   
  4. mysql> select * from person;   
  5. +------+----------+------+------------+---------+   
  6. | id   | name     | sex  | birth      | address |   
  7. +------+----------+------+------------+---------+   
  8. |    1 | lisi     | man  | 1990-01-08 | China   |   
  9. |    3 | zhangsan | man  | 1990-01-10 | China   |   
  10. +------+----------+------+------------+---------+   
  11. 2 rows in set (0.00 sec)  

删除表中全部的数据:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> delete from person;   
  2. Query OK, 2 rows affected (0.04 sec)   
  3.   
  4. mysql> select * from person;   
  5. Empty set (0.00 sec)  


(14)重命名表
查看重命名前的表名:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> show tables;   
  2. +-------------------+   
  3. | Tables_in_test_db |   
  4. +-------------------+   
  5. | person            |   
  6. +-------------------+   
  7. 1 row in set (0.00 sec)  

重命名:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> alter table person rename person_test;   
  2. Query OK, 0 rows affected (0.04 sec)   
  3.   
  4. mysql> show tables;   
  5. +-------------------+   
  6. | Tables_in_test_db |   
  7. +-------------------+   
  8. | person_test       |   
  9. +-------------------+   
  10. 1 row in set (0.00 sec)  


(15)新增主键
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> alter table person_test add primary key(id);   
  2. Query OK, 0 rows affected (0.11 sec)   
  3. Records: 0  Duplicates: 0  Warnings: 0  
  4.   
  5. mysql> desc person_test;   
  6. +---------+-------------+------+-----+---------+-------+   
  7. | Field   | Type        | Null | Key | Default | Extra |   
  8. +---------+-------------+------+-----+---------+-------+   
  9. | id      | int(11)     | NO   | PRI | 0       |       |   
  10. | name    | varchar(20) | YES  |     | NULL    |       |   
  11. | sex     | char(8)     | YES  |     | NULL    |       |   
  12. | birth   | date        | YES  |     | NULL    |       |   
  13. | address | varchar(50) | YES  |     | NULL    |       |   
  14. +---------+-------------+------+-----+---------+-------+   
  15. 5 rows in set (0.00 sec)  


删除主键:
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> alter table person_test drop primary key;   
  2. Query OK, 0 rows affected (0.18 sec)   
  3. Records: 0  Duplicates: 0  Warnings: 0  
  4.   
  5. mysql> desc person_test;   
  6. +---------+-------------+------+-----+---------+-------+   
  7. | Field   | Type        | Null | Key | Default | Extra |   
  8. +---------+-------------+------+-----+---------+-------+   
  9. | id      | int(11)     | NO   |     | 0       |       |   
  10. | name    | varchar(20) | YES  |     | NULL    |       |   
  11. | sex     | char(8)     | YES  |     | NULL    |       |   
  12. | birth   | date        | YES  |     | NULL    |       |   
  13. | address | varchar(50) | YES  |     | NULL    |       |   
  14. +---------+-------------+------+-----+---------+-------+   
  15. 5 rows in set (0.01 sec)  


(16)删除表
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> drop table person_test;   
  2. Query OK, 0 rows affected (0.04 sec)   
  3.   
  4. mysql> show tables;   
  5. Empty set (0.00 sec)  


(17)删除数据库
Java代码 Windows7下MySQL5.5.20免安装版的配置  Windows7下MySQL5.5.20免安装版的配置Windows7下MySQL5.5.20免安装版的配置
  1. mysql> show databases;   
  2. +--------------------+   
  3. | Database           |   
  4. +--------------------+   
  5. | information_schema |   
  6. | mysql              |   
  7. | performance_schema |   
  8. | test               |   
  9. | test_db            |   
  10. +--------------------+   
  11. 5 rows in set (0.00 sec)   
  12.   
  13. mysql> drop database test_db;   
  14. Query OK, 0 rows affected (0.11 sec)   
  15.   
  16. mysql> show databases;   
  17. +--------------------+   
  18. | Database           |   
  19. +--------------------+   
  20. | information_schema |   
  21. | mysql              |   
  22. | performance_schema |   
  23. | test               |   
  24. +--------------------+   
  25. 4 rows in set (0.00 sec)