首页 > Linux入门大全 > 新手上路-MySQL安装

新手上路-MySQL安装

2014年10月21日

新手上路-MySQL安装

http://blog.chinaunix.net/uid-16844903-id-3510383.html

目录结构

  • Windows平台
    •     MySQL安装
    •     示例数据导入
  • Linux平台
    •     CentOS系统
    •     Ubuntu系统
  • FAQ
    •     密码生成工具-keepass
    •     修改提示符
    •     图形工具
    •     删除报错

MySQL安装

32位系统下载地址http://downloads.mysql.com/archives/mysql-5.5/mysql-5.5.20-win32.msi
64位系统下载地址http://downloads.mysql.com/archives/mysql-5.5/mysql-5.5.20-winx64.msi
安装过程(以64位平台为例)

  1. 选择自定义安装
    16844903_1362626605aNed
  2. 修改MySQL存放数据文件的目录C:\Program Files\MySQL\MySQL Server 5.5
    16844903_1362626605cXe5
  3. 这个页面是企业版的推广,直接关掉.我们只用免费的._
    16844903_1362626605JjO8
  4. 开始数据库配置向导
    16844903_1362626605f3yw
  5. 选择详细模式
    16844903_13626266063gHe
  6. 选择开发者
    16844903_1362626606KR2L
  7. 选择多功能数据库
    16844903_13626266073bRT
  8. 指定innodb表空间的位置,保持默认
    16844903_1362626608d9V6
  9. 选择业务类型,OLTP,在线交易处理
    16844903_1362626608X4z9
  10. 指定MySQL的服务端口,保持默认的3306.并推荐使用严格的sql模式
    sql-mode=”STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION”
    STRICT_TRANS_TABLES 事务型存储引擎将对输入数据做更严格的检查,这会导致MySQL拒绝接受绝大多数非法值
    NO_AUTO_CREATE_USER 不带IDENTIFIED BY子句的GRANT语句将不能创建用户,防止创建一个(已经授权)没有口令的新用户.
    NO_ENGINE_SUBSTITUTION 建表或修改表时,指定的存储引擎不可用,会报错
    16844903_1362626608s8QF
  11. 字符集设置,选择utf8
    16844903_1362626609OlSz
  12. 选择MySQL服务名,将MySQL的命令路径包含到环境变量中
    16844903_1362626609I7C3
  13. 设置root用户的密码,禁止使用123456之类的简单密码,推荐使用大小写字母+数字的混合密码,长度16位即可.
    推荐使用keepass工具软件生成,FAQ部分有介绍.
    不要创建额外的匿名用户.
    16844903_1362626609N8pm
  14. 执行之后,MySQL会自动启动,点击Finish完成配置
    16844903_1362626610nHJ0
  15. 打开运行,使用cmd命令.先设置cmd的布局,将缓冲区的宽度和高度设置为9999(最大),避免前面的输出结果被截断,或者因为换行导致的格式混乱.
    16844903_1362626610O418
  16. 以本地(localhost)的方式连接MySQL.注意:不要将密码以明文的形式写在-p参数后面.
    select user,host,password from mysql.user;

    该命令可以查看当前MySQL中存在的帐号.host列的百分号(%),代表该MySQL数据库可以从任意地方连接.
    尝试用本地IP地址连接MySQL.(ip地址查看命令:ipconfig,看输出的”以太网适配器””IPv4地址部分”)
    16844903_136262661355E5

  17. 停止/重启MySQL
    在”运行”窗口中,输入’services.msc’,打开服务管理器,找到MySQL服务(MySQL这个服务名称就是第12步,选择的MySQL名称).左上角,有”停止”,”重启动”等命令.
    16844903_1362626613A4R4

示例数据导入

示例数据库下载地址http://examples.oreilly.com/9780596007270/
实体模型信息http://en.wikipedia.org/wiki/Entity-relationship_model

  1. 登录MySQL,创建bank库
    CREATE DATABASE IF NOT EXISTS bank;
  2. 将下载的LearningSQLExample.sql文件放到C:\Program Files\MySQL\MySQL Server 5.5目录下
  3. 选择bank库
    USE bank;
  4. 导入LearningSQLExample.sql的数据
    SOURCE C:\Program Files\MySQL\MySQL Server 5.5\LearningSQLExample.sql;

    或者

    mysql -uroot -p bank < "C:\Program Files\MySQL\MySQL Server 5.5\LearningSQLExample.sql"
  5. 查看导入的数据表
    执行

    SHOW TABLES;
  6. 附:表定义说明
    表名 定义
    account 为特定顾客开放的特定产品
    branch 开展银行交易的场所
    business 公司顾客(customer表的子类型)
    customer 与银行业务来往的个人或公司
    department 执行特定银行职能的雇员分组
    employee 银行的工作人员
    individual 个人顾客(customer表的子类型)
    officer 允许为公司顾客发起商务交易的人
    product 向顾客提供的银行服务
    product_type 具备相似功能的产品的分组
    transaction 改变账户余额的操作

Linux平台

导入数据,参考Windows部分.

CentOS系统

安装过程省略,参照编译/二进制/rpm安装文档

Ubuntu系统

参考http://www.percona.com/doc/percona-server/5.5/installation/apt_repo.html
16844903_1362626604vb0v
注意

  1. VERSION代表的是发行代号,如果是12.04LTS版本,请替换为precise
  2. 通过apt-get方式安装的版本是最新版本.
  3. 设置mysql的root用户密码

FAQ

密码生成工具-keepass

官网http://keepass.info/
2.21版下载地址http://downloads.sourceforge.net/keepass/KeePass-2.21-Setup.exe
生成随机密码

  1. Tools -> Password Generator
    16844903_1362626613H9g9
  2. 显示生成的密码列表,查看Preview选项卡,随便选择一行都可以.
    16844903_1362626613cAmd

    修改提示符

    在my.cnf配置文件的mysql部分中增加

    prompt=\\R:\\m:\\s\_\h:\p\_\\d>
    

    (默认)mysql>
    (修改后)10:11:36 127.0.0.1:3306 (none)>

更多参考http://dev.mysql.com/doc/refman/5.5/en/mysql-commands.html

图形工具

heidisql
官网地址http://www.heidisql.com/

删除报错

mysql> drop database if exists bank;
ERROR 1010 (HY000): Error dropping database (can't rmdir '.\bank\', errno: 17)

解决办法:进入C:\Program Files\MySQL\MySQL Server 5.5\data\bank目录,查看是否有其他非数据库的文件.有的话,清除.

本文的评论功能被关闭了.