Linux环境中,安装好mysql后,还不能直接启动服务,必须先对数据库进行初始化。初始化的工作主要包括:
  • 初始化日志、表空间等数据库必须的文件;
  • 创建并初始化系统数据库(mysql)。
初始化完成后,启动mysqld守护进程,方可访问数据库。

在Windows的环境下,安装包内已经自带了一个初始化好的环境,安装后展开在mysql根目录的data子目录。所以并不需要手工进行初始化。但是某些情况下,也可能需要从零开始初始化数据库,比如:
  • 数据文件被破坏,需要重建;
  • 希望保留现有环境不动,建立一个新的环境;
  • 希望建立一个干净的环境。
不幸的是,Linux环境下是利用mysql_install_db.sh脚本初始化数据库环境的;而在windows版中并没有提供相应的脚本。那么该怎么办呢?
经过对Linux环境下的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"
......

 

相关文章:

  • 2022-01-07
  • 2022-01-19
  • 2021-11-29
  • 2022-12-23
  • 2021-09-07
  • 2022-01-07
猜你喜欢
  • 2021-06-19
  • 2021-12-01
  • 2022-12-23
  • 2022-02-03
  • 2021-11-17
  • 2021-11-17
  • 2022-01-27
相关资源
相似解决方案