加入收藏 收藏网站 设为首页 设为首页
招生考试网
学历类| 阳光高考 研 究 生 自学考试 成人高考 专 升 本 中考会考 外语类| 四 六 级 职称英语 商务英语 公共英语 日语能力
资格类| 公 务 员 报 关 员 银行从业 司法考试 导 游 证 教师资格 财会类| 会 计 证 经 济 师 会计职称 注册会计 税 务 师
工程类| 一级建造 二级建造 造 价 师 造 价 员 咨 询 师 监 理 师 医学类| 卫生资格 执业医师 执业药师 执业护士 国际护士
计算机| 等级考试 软件水平 应用能力 其它类| 书画等级 美国高考 驾 驶 员 书法等级 少儿英语 报 检 员 单 证 员 出国留学
 招生考试网 - 计算机等级考试 - 考试辅导 - 正文

 
Windows环境下初始化mysql
来源:fjzsksw.com 2009-12-14 编辑:yangmeiling 【字体:小 大】
Windows环境下初始化mysql

Linux环境中,安装好mysql后,还不能直接启动服务,必须先对数据库进行初始化。初始化的工作主要包括:

  初始化日志、表空间等数据库必须的文件;

  创建并初始化系统数据库(mysql)。

  初始化完成后,启动mysqld守护进程,方可访问数据库。

  在Windows的环境下,安装包内已经自带了一个初始化好的环境,安装后展开在mysql根目录的data子目录。所以并不需要手工进行初始化。但是某些情况下,也可能需要从零开始初始化数据库,比如:

  数据文件被破坏,需要重建;

  希望保留现有环境不动,建立一个新的环境;

  希望建立一个干净的环境。

  不幸的是,Linux环境下是利用mysql_install_db.sh脚本初始化数据库环境的;而在windows版中并没有提供相应的脚本。那么该怎么办呢?

  经过对Linux环境下的mysql_install_db.sh的分析,发现初始化数据库的命令主要是以下几行:

  mysql_install_db.sh

  # Pipe mysql_system_tables.sql to "mysqld --bootstrap"
  s_echo "Installing MySQL system tables..."
  if { echo "use mysql;"; cat $create_system_tables $fill_system_tables; } | eval "$filter_cmd_line" | $mysqld_install_cmd_line > /dev/null
  then
  s_echo "OK"
  s_echo "Filling help tables..."
  # Pipe fill_help_tables.sql to "mysqld --bootstrap"
  if { echo "use mysql;"; cat $fill_help_tables; } | $mysqld_install_cmd_line > /dev/null
  then
    s_echo "OK"

  其中:

  $create_system_tables、$fill_system_tables和$fill_help_tables分别是创建系统数据库、初始化系统数据库中的数据、和初始化帮助数据;

  $filter_cmd_line是过滤掉主机名(用于交叉初始化非本机运行数据库环境的情况,可忽略);

  $mysqld_install_cmd_line主要是"mysqld --bootstrap"命令;

  分析清楚上述内容,就可以自己手工初始化数据库了。具体步骤如下:

  设置mysql配置文件。主要是设置basedir(mysql的home目录,如:/opt/mysql-5.1.40)和datadir(数据库文件目录,如:/var/db/mysql)两个参数。

  初始化数据库目录,检查/var/db/mysql和/var/db/mysql/mysql(系统数据库)目录是否存在,若不存在则手工创建之。

  准备初始化数据库的sql脚本。将/opt/mysql-5.1.40/share目录下的mysql_system_tables.sql、 mysql_system_tables_data.sql和fill_help_tables.sql三个文件拷贝到/tmp目录下,并在每个文件的最开始插入“use mysql;”一行。

  执行下列命令,初始化数据库:

  /opt/mysql-5.1.40/bin/mysqld.exe --bootstrap --console < /tmp/mysql_system_tables.sql
  /opt/mysql-5.1.40/bin/mysqld.exe --bootstrap --console < /tmp/mysql_system_tables_data.sql
  /opt/mysql-5.1.40/bin/mysqld.exe --bootstrap --console < /tmp/fill_help_tables.sql

  运行/opt/mysql-5.1.40/bin/mysqld.exe启动数据库服务(注意:停止数据库服务的命令是/opt/mysql-5.1.40/bin/mysqladmin.exe -uroot shutdown)。

  运行/opt/mysql-5.1.40/bin/mysql.exe -uroot,访问数据库服务,验证数据库是否正常。

  至此数据库已初始化完毕,可以正常访问了。



 
网站版权与免责声明
①由于各方面情况的不断调整与变化,本网所提供的相关信息请以权威部门公布的正式信息为准.
②本网转载的文/图等稿件出于非商业性目的,如转载稿涉及版权等问题,请在两周内来电联系.
最新文章
热门文章

报名考试
全国 | 黑龙江 | 吉林 | 辽宁 | 内蒙古
青海 | 宁夏 | 甘肃 | 新疆 | 陕西
西藏 | 北京 | 天津 | 河北 | 山东
江苏 | 安徽 | 河南 | 上海 | 浙江
福建 | 广东 | 山西 | 湖南 | 湖北
江西 | 广西 | 海南 | 云南 | 贵州
四川 | 重庆
分省高校计算机考试
黑龙江 | 吉林 | 辽宁 | 内蒙古 | 河北
北京 | 天津 | 新疆 | 甘肃 | 宁夏
青海 | 陕西 | 山西 | 河南 | 山东
江苏 | 安徽 | 浙江 | 福建 | 广东
海南 | 广西 | 江西 | 湖北 | 湖南
四川 | 上海 | 重庆 | 贵州 | 云南
西藏
成绩查询
报考指南
试题答案
模拟试题
考试辅导
计算机一级 | 计算机二级 | 计算机三级 | 计算机四级
经验交流
高校计算机