这里会显示出您选择的修订版和当前版本之间的差别。
| 后一修订版 | 前一修订版 | ||
|
zh:常见问题及解答:如何转移mysql数据库存储目录 [2016/08/13 02:01] liuxl 创建 |
zh:常见问题及解答:如何转移mysql数据库存储目录 [2017/12/12 03:05] (当前版本) |
||
|---|---|---|---|
| 行 1: | 行 1: | ||
| - | 123 | + | <note warning> 请确保系统没任何通话任务时,执行以下修改操作。 </note> |
| + | |||
| + | 由于大量通话造成数据库文件越来越大,会占用服务器大量硬盘空间,与转移录音文件类似我们往往将其他设备挂载至本机服务器,将数据库目录迁移至挂载的路径下,再将目录软连接至服务器原始位置。 | ||
| + | |||
| + | |||
| + | ===== 服务器上停止asterCC的mysql服务 ===== | ||
| + | |||
| + | *进入asterCC服务器的CentOS系统,如下执行查看当前数据库正处于运行状态: | ||
| + | <code> service mysqld status </code> | ||
| + | |||
| + | 如图: | ||
| + | |||
| + | {{:zh:常见问题及解答:mysql_mysqld_status.png?750|}} | ||
| + | |||
| + | <code> 执行 ps aux | grep mysqld 也可查看mysql运行状态。 </code> | ||
| + | |||
| + | *确保服务器内无通话任务时,如下执行命令关闭mysql服务: | ||
| + | <code> service mysqld stop </code> | ||
| + | |||
| + | 如图: | ||
| + | |||
| + | {{:zh:常见问题及解答:mysql_mysqld_stop.png?750|}} | ||
| + | |||
| + | <code> 执行 mysqladmin shutdown -uroot -pastercc 也可停掉mysql服务(asterCC的mysql密码初期化为astercc)。 </code> | ||
| + | |||
| + | *完毕后可再次执行查看状态命令,确认mysql是否真的已停止运行。 | ||
| + | |||
| + | |||
| + | ===== 将原始数据库目录进行迁移备份操作 ===== | ||
| + | |||
| + | *将其它存储设备(或服务器)执行mount命令挂载到服务器某个目录,例如Linux根目录下默认的挂载目录mnt或其它自定义目录,本例以mnt目录为例。 | ||
| + | |||
| + | *将/var/lib/目录下的mysql文件夹复制到/mnt下,如下执行操作: | ||
| + | <code> cp -Rp /var/lib/mysql /mnt </code> | ||
| + | 如图: | ||
| + | |||
| + | {{:zh:常见问题及解答:mysql_data_cp.png?750|}} | ||
| + | |||
| + | 数据库内容很庞大,这一过程执行时间会很长,需耐心等待操作完成,中间切勿执行其他操作!复制操作完成后mnt路径下将显示新数据库目录,该目录将存储在新存储设备(或服务器)内。 | ||
| + | |||
| + | *将/var/lib/目录下的mysql文件夹,重命名为mysql.bak作为备份,如下执行命令: | ||
| + | <code> mv /var/lib/mysql /var/lib/mysql.bak </code> | ||
| + | 如图: | ||
| + | |||
| + | {{:zh:常见问题及解答:mysql_data_mv.png?750|}} | ||
| + | |||
| + | |||
| + | ===== 将新数据库目录软链接至原目录位置 ===== | ||
| + | |||
| + | *复制完成后如下执行命令,将新数据库目录软链接至/var/lib操作如下: | ||
| + | <code> ln -s /mnt/mysql /var/lib </code> | ||
| + | 如图: | ||
| + | |||
| + | {{:zh:常见问题及解答:mysql_ln_s.png?750|}} | ||
| + | |||
| + | *如下执行命令查看软连接是否生效: | ||
| + | <code> ll /var/lib </code> | ||
| + | |||
| + | 如图: | ||
| + | |||
| + | {{:zh:常见问题及解答:mysql_ls_l.png?750|}} | ||
| + | |||
| + | |||
| + | ===== 重新启动asterCC服务器的mysql服务 ===== | ||
| + | |||
| + | *已上操作完毕后,如下执行操作重新启动asterCC的mysql服务: | ||
| + | <code> service mysqld start </code> | ||
| + | |||
| + | 如图: | ||
| + | |||
| + | {{:zh:常见问题及解答:mysql_mysqld_start.png?750|}} | ||
| + | |||
| + | <code> 执行 mysqld_safe & 也可启动mysql服务,运行成功后需要按回车键返回命令行提示符。 </code> | ||
| + | |||
| + | *此时可执行查看状态命令,查看mysql是否已处于运行状态,为确保无误可进入mysql系统,查看通话记录等进行验证。 | ||
| + | <note tip> 在一切操作确认成功完成后,可删除原数据目录下的mysql.bak备份文件以节省服务器空间。 </note> | ||