MySQL----数据库的安装、创建

一、MySQL的安装

。。。。。

 

二、MySQL实例的创建

注意:停掉MySQL的服务(我的电脑---管理---服务)

 

如果实例一次创建不成功,第二次创建时会遇到如下错误:

mysql安装出现error Nr.1045

我们在windows下安装mysql时会出现Access denied for user 'root'@localhost'(using password:No)的问题,这个问题是因为你的机器上之前安装过mysql,或者这 一次安装配置了新密码,进入应用的最后一步时候由于某些原因卡出了或者由于服务未启动等原因导致无法配置成功,最终结果是,配置未成功,密码设置已经保存 进去了。这样我们调整好了服务等原因后,进行重新配置的时候,会发现在设置密码的时候,多了一个旧密码输入框。其实这也没什么,在密码知道的情况下,输入 旧密码重新设置密码并不难,而问题关键在于即使旧密码正确,你依旧无法完成配置,在最后一个环节密码认证的时候又出错了,出错原因是密码问题,提示旧密码 不对。
 


解决办法:
1.管理工具---服务里面停止Mysql服务。
2.控制面板---卸载Mysql,删除C:\Program Files\MySQL目录.
3.
这是最关键一步,只做前面两步,密码还是修改不了,因为MySQL 还有文件,也就是在C:\Documents and Settings\All Users\Application Data里面的MySQL文件夹,这个文件没有清除是MySQL重装出现旧密码的根源所在。于是删除MySQL文件夹。
4.
检查C:\WINDOWS目录下是否有my.ini文件,将其删除
5.注册表里的HEKY_LOCAL_MACHINE,SOFTWARE,MYSQL删除
       HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL 目录删除
  HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL 目录删除
       HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL 目录删除

注意:删除完毕后,再次安装创建实例时,还会出现让输入老密码的选项框,可不填直接输入新密码

三、MySQL数据库的创建

 MySQL的交互终端mysql  command  Line  client(类似cmd)创建数据库

输入密码登陆:创建实例时设置的密码

 

MySQL中的字符集转换过程

 1. MySQL Server收到请求时将请求数据从character_set_client转换为character_set_connection;

 2. 进行内部操作前将请求数据从character_set_connection转换为内部操作字符集,其确定方法如下:

    使用每个数据字段的CHARACTER SET设定值;

   若上述值不存在,则使用对应数据表的DEFAULT CHARACTER SET设定值(MySQL扩展,非SQL标准);

     若上述值不存在,则使用对应数据库的DEFAULTCHARACTER SET设定值;

   若上述值不存在,则使用character_set_server设定值。

 3. 将操作结果从内部操作字符集转换为character_set_results。

查看字符集:

查看mysql系统默认字符集---------show variables like 'character%';

查看mysql系统默认排序方式 -----show variables like 'collation_%';

查看mysql所支持的所有字符集---show charset;

查看当前数据库编码-----------------show create database  db_name;

查看表编码-----------------------------show create table         t_name;

查看字段编码--------------------------show full columns from t_name;

 

修改字符集:

一、设置编码my.ini:

    在[client]下添加 default-character-set=utf8 

    在[mysqld]下添加 default-character-set=utf8

二、用mysql命令修改编码 :(注意:只是终端当前操作的修改,再次打开终端还需要修改)

 set character_set_client=utf8; //客户端字符集

 set character_set_connection=utf8; //链接字符集

 set character_set_database=utf8; //数据库字符集

 set character_set_results=utf8;  //结果字符集

 set character_set_server=utf8;  //服务器字符集

 set character_set_system=utf8;  //系统字符集

 set collation_connection=utf8; //链接校对

 set collation_database=utf8;  //数据库校对

 set collation_server=utf8;    //服务器校对

  setnames 字符集;同时修改character_set_client/character_set_connection/character_set_results字符集.

三、创建对象时设置字符集:

1 创建数据库指定数据库的字符集

    create  database  mydb default character set utf8 collate utf8_general_ci

    create  database if not exists mydb default character set utf8 collate utf8_general_ci;

2 创建表时指定表字符集    

    create  table table_name (id int unsigned) default character set utf8 collate utf8_general_ci;

3 创建字段时指定字符集

    create  table table_name2 (id int,name char(10) character set utf8 collate utf8_general_ci);

 保存,重启mysql即可;

四、追加修改:

修改数据库的字符集:

    -----alter  database mydb character set utf-8(utf8) collate utf8_general_ci;

修改表的字符集:

      1)把表默认的字符集和所有字符列(CHAR,VARCHAR,TEXT)改为新的字符集:

                                                      alter table tbl_name convert to character set character_name[collate ...]

      2)只是修改表的默认字符集: alter table tbl_name default character set character_name[collate...];

修改字段的字符集:alter table t_name change c_name c_name character set character_name [collate ...];

  1. --显示所有的数据库  
  2.   
  3. mysql> show databases;  
  4. +--------------------+  
  5. | Database           |  
  6. +--------------------+  
  7. | information_schema |  
  8. | mysql              |  
  9. | test               |  
  10. +--------------------+  
  11. 3 rows in set (0.09 sec)  
  12.   
  13. --创建一个数据库test2  
  14.   
  15. mysql> create database test2;  
  16. Query OK, 1 row affected (0.00 sec)  
  17.   
  18. --使用数据库test2  
  19.   
  20. mysql> use test2;  
  21. Database changed  
  22.   
  23. --显示test2中的所有表  
  24.   
  25. mysql> show tables;  
  26. Empty set (0.00 sec)  
  27.   
  28. --创建一个mytable表  
  29.   
  30. mysql> create table mytable (name varchar(20), sex char(1),  
  31.     -> birth date, birthaddr varchar(20));  
  32. Query OK, 0 rows affected (0.14 sec)  
  33.   
  34. --显示数据库中的所有表  
  35.   
  36. mysql> show tables;  
  37. +-----------------+  
  38. | Tables_in_test2 |  
  39. +-----------------+  
  40. | mytable         |  
  41. +-----------------+  
  42. 1 row in set (0.02 sec)  
  43.   
  44. --显示表结构  
  45.   
  46. mysql> describe mytable;  
  47. +-----------+-------------+------+-----+---------+-------+  
  48. | Field     | Type        | Null | Key | Default | Extra |  
  49. +-----------+-------------+------+-----+---------+-------+  
  50. | name      | varchar(20) | YES  |     | NULL    |       |  
  51. | sex       | char(1)     | YES  |     | NULL    |       |  
  52. | birth     | date        | YES  |     | NULL    |       |  
  53. | birthaddr | varchar(20) | YES  |     | NULL    |       |  
  54. +-----------+-------------+------+-----+---------+-------+  
  55. 4 rows in set (0.07 sec)  
  56.   
  57. --查询表的所有字段  
  58.   
  59. mysql> select * from mytable;  
  60. Empty set (0.00 sec)  
  61.   
  62. --向表中插入一条记录  
  63.   
  64. mysql> insert into mytable  
  65.     -> values(  
  66.     -> 'abc','f','1988-07-07','chian');  
  67. Query OK, 1 row affected (0.08 sec)  
  68.   
  69. --查看表的记录  
  70.   
  71. mysql> select * from mytable;  
  72. +------+------+------------+-----------+  
  73. | name | sex  | birth      | birthaddr |  
  74. +------+------+------------+-----------+  
  75. | abc  | f    | 1988-07-07 | chian     |  
  76. +------+------+------------+-----------+  
  77. 1 row in set (0.00 sec)  

MyEclipse 连接数据库、操作数据库(是上面的test1)

第一步 打开Database

第二步 创建连接

在空白处右击鼠标新建(即new)或者点击菜单栏中的快捷键(图二中向下的三角符号)新建。弹出Database Driver 菜单见(图三)

第三步 选择连接方式

在Driver template选项框中 选择MySql Connector/j 如,图四

第四步 填写配置信息

Driver name:链接数据库的名称(这个可由自己喜好填写,建议和所做项目名称相关便于使用时查找)

Connection URL:连接要使用mysql数据库的地址

(jdbc:mysql://<hostname>[<:3306>]/<dbname>)可改为(jdbc:mysql://localhost:3306/test)

其中localhost表示的是连接本地数据库的意思,3306是表示连接mysql数据库的端口号(不同的数据库端口号也不相同),

User name 填写数据库用户名mysql默认的是root

Password填写访问mysql数据库时的你所设置的访问密码。如,图五

第五步 添加驱动

点击Add JARs添加myeclipse连接mysql数据库的驱动文件(存放驱动的文件最好是英文目录,在测试时确定mysql数据库已经打开,否则测试不会成功),在这里添加的是mysql-connector-java-5.1.7-bin版本(可以在网上搜索下载、)

第六步 测试数据配置是否正确

点击Test Driver测试是否配置成功,输入访问数据库密码

第七步 测试成功

测试连接mysql数据库成功,点击Finish完成创建连接

第八歩 连接数据库

右击你创建的连接点击Open another connection  输入mysql数据库密码就能看到所创建的数据库表

一、MySQL的安装 。。。。。   二、MySQL实例的创建 注意:停掉MySQL的服务(我的电脑---管理---服务)   如果实例一次创建不成功,第二次创建时会遇到如下错误: mysql安装出现error Nr.1045

我们在windows下安装mysql时会出现Access denied for user 'root'@localhost'(using password:No)的问题,这个问题是因为你的机器上之前安装过mysql,或者这 一次安装配置了新密码,进入应用的最后一步时候由于某些原因卡出了或者由于服务未启动等原因导致无法配置成功,最终结果是,配置未成功,密码设置已经保存 进去了。这样我们调整好了服务等原因后,进行重新配置的时候,会发现在设置密码的时候,多了一个旧密码输入框。其实这也没什么,在密码知道的情况下,输入 旧密码重新设置密码并不难,而问题关键在于即使旧密码正确,你依旧无法完成配置,在最后一个环节密码认证的时候又出错了,出错原因是密码问题,提示旧密码 不对。
 


解决办法:
1.管理工具---服务里面停止Mysql服务。
2.控制面板---卸载Mysql,删除C:\Program Files\MySQL目录.
3.
这是最关键一步,只做前面两步,密码还是修改不了,因为MySQL 还有文件,也就是在C:\Documents and Settings\All Users\Application Data里面的MySQL文件夹,这个文件没有清除是MySQL重装出现旧密码的根源所在。于是删除MySQL文件夹。
4.
检查C:\WINDOWS目录下是否有my.ini文件,将其删除
5.注册表里的HEKY_LOCAL_MACHINE,SOFTWARE,MYSQL删除
       HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL 目录删除
  HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL 目录删除
       HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL 目录删除

注意:删除完毕后,再次安装创建实例时,还会出现让输入老密码的选项框,可不填直接输入新密码

三、MySQL数据库的创建   MySQL的交互终端mysql  command  Line  client(类似cmd)创建数据库 输入密码登陆:创建实例时设置的密码   MySQL中的字符集转换过程 查看字符集: 查看mysql系统默认字符集---------show variables like 'character%'; 查看mysql系统默认排序方式 -----show variables like 'collation_%'; 查看mysql所支持的所有字符集---show charset; 查看当前数据库编码----------------- show create database  db_name; 查看表编码----------------------------- show create table         t_name; 查看字段编码-------------------------- show full columns from t_name;   修改字符集: 一、设置编码my.ini:     在[client]下添加  default-character-set=utf8      在[mysqld]下添加 default-character-set=utf8 二、用mysql命令修改编码 :(注意:只是终端当前操作的修改,再次打开终端还需要修改)     create  database if not exists mydb default character set utf8 collate utf8_general_ci;     create  table table_name (id int unsigned) default character set utf8 collate utf8_general_ci;
  1. --显示所有的数据库  
  2.   
  3. mysql> show databases;  
  4. +--------------------+  
  5. | Database           |  
  6. +--------------------+  
  7. | information_schema |  
  8. | mysql              |  
  9. | test               |  
  10. +--------------------+  
  11. 3 rows in set (0.09 sec)  
  12.   
  13. --创建一个数据库test2  
  14.   
  15. mysql> create database test2;  
  16. Query OK, 1 row affected (0.00 sec)  
  17.   
  18. --使用数据库test2  
  19.   
  20. mysql> use test2;  
  21. Database changed  
  22.   
  23. --显示test2中的所有表  
  24.   
  25. mysql> show tables;  
  26. Empty set (0.00 sec)  
  27.   
  28. --创建一个mytable表  
  29.   
  30. mysql> create table mytable (name varchar(20), sex char(1),  
  31.     -> birth date, birthaddr varchar(20));  
  32. Query OK, 0 rows affected (0.14 sec)  
  33.   
  34. --显示数据库中的所有表  
  35.   
  36. mysql> show tables;  
  37. +-----------------+  
  38. | Tables_in_test2 |  
  39. +-----------------+  
  40. | mytable         |  
  41. +-----------------+  
  42. 1 row in set (0.02 sec)  
  43.   
  44. --显示表结构  
  45.   
  46. mysql> describe mytable;  
  47. +-----------+-------------+------+-----+---------+-------+  
  48. | Field     | Type        | Null | Key | Default | Extra |  
  49. +-----------+-------------+------+-----+---------+-------+  
  50. | name      | varchar(20) | YES  |     | NULL    |       |  
  51. | sex       | char(1)     | YES  |     | NULL    |       |  
  52. | birth     | date        | YES  |     | NULL    |       |  
  53. | birthaddr | varchar(20) | YES  |     | NULL    |       |  
  54. +-----------+-------------+------+-----+---------+-------+  
  55. 4 rows in set (0.07 sec)  
  56.   
  57. --查询表的所有字段  
  58.   
  59. mysql> select * from mytable;  
  60. Empty set (0.00 sec)  
  61.   
  62. --向表中插入一条记录  
  63.   
  64. mysql> insert into mytable  
  65.     -> values(  
  66.     -> 'abc','f','1988-07-07','chian');  
  67. Query OK, 1 row affected (0.08 sec)  
  68.   
  69. --查看表的记录  
  70.   
  71. mysql> select * from mytable;  
  72. +------+------+------------+-----------+  
  73. | name | sex  | birth      | birthaddr |  
  74. +------+------+------------+-----------+  
  75. | abc  | f    | 1988-07-07 | chian     |  
  76. +------+------+------------+-----------+  
  77. 1 row in set (0.00 sec)  

MyEclipse 连接数据库、操作数据库(是上面的test1)

第一步 打开Database

第二步 创建连接

在空白处右击鼠标新建(即new)或者点击菜单栏中的快捷键(图二中向下的三角符号)新建。弹出Database Driver 菜单见(图三)

第三步 选择连接方式

在Driver template选项框中 选择MySql Connector/j 如,图四

第四步 填写配置信息

Driver name:链接数据库的名称(这个可由自己喜好填写,建议和所做项目名称相关便于使用时查找)

Connection URL:连接要使用mysql数据库的地址

(jdbc:mysql://<hostname>[<:3306>]/<dbname>)可改为(jdbc:mysql://localhost:3306/test)

其中localhost表示的是连接本地数据库的意思,3306是表示连接mysql数据库的端口号(不同的数据库端口号也不相同),

User name 填写数据库用户名mysql默认的是root

Password填写访问mysql数据库时的你所设置的访问密码。如,图五

第五步 添加驱动

点击Add JARs添加myeclipse连接mysql数据库的驱动文件(存放驱动的文件最好是英文目录,在测试时确定mysql数据库已经打开,否则测试不会成功),在这里添加的是mysql-connector-java-5.1.7-bin版本(可以在网上搜索下载、)

第六步 测试数据配置是否正确

点击Test Driver测试是否配置成功,输入访问数据库密码

第七步 测试成功

测试连接mysql数据库成功,点击Finish完成创建连接

第八歩 连接数据库

右击你创建的连接点击Open another connection  输入mysql数据库密码就能看到所创建的数据库表

猜你喜欢

转载自2277259257.iteye.com/blog/2070937