Migration 如何将SuiteRM文件从一台服务器传输到另一台服务器

Migration 如何将SuiteRM文件从一台服务器传输到另一台服务器,migration,Migration,我在服务器xxx中有一个站点,速度很慢,所以我需要将其传输到服务器yyy。这是一本书。因此,如何将其迁移到新服务器,它需要是SuiteRM。由于SuiteRM是SugarCRM的开源分支,因此复制SuiteRM服务器的过程与Sugar类似。移动SugarCRM服务器的说明如下: 以下是我成功地将SuiteRM安装从一台Linux/MySQL服务器转移到另一台Linux/MySQL服务器的过程: (注意,使用超级用户权限执行以下所有操作,即以root用户身份登录、使用sudo命令或在所有命令前面

我在服务器xxx中有一个站点,速度很慢,所以我需要将其传输到服务器yyy。这是一本书。因此,如何将其迁移到新服务器,它需要是SuiteRM。

由于SuiteRM是SugarCRM的开源分支,因此复制SuiteRM服务器的过程与Sugar类似。移动SugarCRM服务器的说明如下:

以下是我成功地将SuiteRM安装从一台Linux/MySQL服务器转移到另一台Linux/MySQL服务器的过程:

(注意,使用超级用户权限执行以下所有操作,即以root用户身份登录、使用sudo命令或在所有命令前面加sudo。)

  • 使用SuiteRM所需的所有先决条件设置新服务器。对于Debian,以下是命令:

    apt-get install apache2
    apt-get install mysql-client
    apt-get install mysql-server
    apt-get install php5
    apt-get install php5-mysql
    
    确保为MySQL root用户使用强密码,并在某个地方记下。它不必是您在原始SuiteRM服务器上使用的同一把密码剑

    将Apache指定为要自动重新配置的web服务器

  • 设置Apache虚拟主机以指向要运行SuiteRM的位置。这与为任何网站设置虚拟主机完全相同。。这一过程在其他地方有很好的记录

    SuiteRM的webtree是使用Apache DocumentRoot指令指定的目录。我确保新服务器上的webtree与旧服务器上的webtree相同,尽管如果您移动它,它可能会工作

  • 如果原始SuiteRM安装有会话目录,请在新服务器上创建此目录,并确保www数据用户能够写入该目录。例如:

    mkdir /var/www/suitecrm-session-directory
    chown www-data /var/www/suitecrm-session-directory
    
    会话目录必须与旧SuiteRM服务器上的目录位于同一位置,否则您需要查找并更新指向它的SuiteRM配置参数

  • 将旧SuiteRM服务器上webtree中的所有文件复制到新服务器。我用rsync来做这个。在下面的示例中,新旧服务器上的webtree都是/var/www/suiterm

    首先,确保在新旧服务器上都安装了rsync,方法是:

    apt-get install rsync
    
    然后登录到新的Web服务器并运行以下操作(将“root”替换为您在旧服务器上登录的用户,将“oldserver.com”替换为旧服务器的URL):

    除非已设置基于证书的SSH身份验证,否则系统将提示您输入用户密码

  • 登录旧的SuiteRM服务器并复制数据库。您需要知道MySQL数据库根用户密码(用旧服务器上suitecrm数据库的实际名称替换“suitecrm”):

  • 将刚刚创建的数据库转储复制到新服务器。我用scp来做这个。登录到新服务器并运行以下操作(将“root”替换为您在旧服务器上登录的用户,将“oldserver.com”替换为旧服务器的URL):

  • 在新服务器上创建数据库,并从数据库转储导入数据。注意。您需要保持数据库名称不变—如果不是,则需要查找并更新指向此名称的SuiteRM配置参数。在新服务器上执行以下操作:

    mysql --user=root --password=theactualpassword
    
    mysql --user=root --password=theactualpassword
    
    mysql --user=root --password=theactualpassword
    
    从mysql提示符:

    create database suitecrm;
    exit
    
    SELECT Host,User from mysql.user;
    
    SHOW GRANTS FOR 'suitecrmuser'@'localhost';
    SHOW GRANTS FOR 'suitecrmuser'@'suitehost.crm';
    
    然后:

    从mysql提示符:

    create database suitecrm;
    exit
    
    SELECT Host,User from mysql.user;
    
    SHOW GRANTS FOR 'suitecrmuser'@'localhost';
    SHOW GRANTS FOR 'suitecrmuser'@'suitehost.crm';
    
    这将显示数据库用户列表。其中两个是SuiteRM用户,一个在本地主机上,另一个在SuiteRM安装的公共URL上

    键入以下内容以退出MySQL:

    exit
    
    exit
    
    exit
    
    登录到新的数据库服务器并运行:

    mysql --user=root --password=theactualpassword
    
    mysql --user=root --password=theactualpassword
    
    crontab -l
    
    crontab -e
    
    从mysql提示符(替换“SuiterMuser”和“suitehost.com”)使用您从旧服务器记录的实际用户和主机。同时使用旧服务器中使用的相同SuiteRM数据库用户密码,否则您需要在SuiteRM中查找并更新相关配置参数。这可能与数据库根用户的密码不同):

  • 复制SuiteRM用户的访问权限:

    首先登录到旧数据库服务器并运行:

    mysql --user=root --password=theactualpassword
    
    mysql --user=root --password=theactualpassword
    
    crontab -l
    
    crontab -e
    
    从mysql提示符:

    create database suitecrm;
    exit
    
    SELECT Host,User from mysql.user;
    
    SHOW GRANTS FOR 'suitecrmuser'@'localhost';
    SHOW GRANTS FOR 'suitecrmuser'@'suitehost.crm';
    
    复制出现在文本编辑器中的授权。从线的起点和终点删除管道符号。每个用户的授权由两行SQL代码组成,从上的授权使用开始

    键入以下内容以退出MySQL:

    exit
    
    exit
    
    exit
    
  • 将访问权限应用于新服务器上的用户:

    mysql --user=root --password=theactualpassword
    
    mysql --user=root --password=theactualpassword
    
    mysql --user=root --password=theactualpassword
    
    登录到新的数据库服务器并运行:

    mysql --user=root --password=theactualpassword
    
    mysql --user=root --password=theactualpassword
    
    crontab -l
    
    crontab -e
    
    在mysql提示符下,为两个数据库用户中的每一个粘贴以GRANT USAGE ON开头的SQL行。应该有四条线排成一排。在每行末尾添加分号。在每行上按Enter键运行SQL代码并应用权限

    键入以下内容以退出MySQL:

    exit
    
    exit
    
    exit
    
  • 将SuiteRM crontab条目从旧服务器复制到新服务器

    首先登录到旧服务器并运行:

    mysql --user=root --password=theactualpassword
    
    mysql --user=root --password=theactualpassword
    
    crontab -l
    
    crontab -e
    
    这将列出服务器上的crontab条目。SuiteRM的常规cron任务应该有一个条目,它每分钟运行一次。将此行复制到文本编辑器

    然后登录到新服务器并运行:

    mysql --user=root --password=theactualpassword
    
    mysql --user=root --password=theactualpassword
    
    crontab -l
    
    crontab -e
    
    这将在编辑模式下打开新服务器上的cron表。粘贴到SuiteRM crontab条目中。退出并保存-要在Debian Linux上执行此操作,请按Ctrl-X并在出现的提示中回答“是”

  • 彻底测试每件事,确保它工作正常

    使用测试工作站,编辑c:\windows\system32\drivers\etc\hosts文件,将SuiteRM服务器的URL设置为指向新服务器。在切断DNS之前,确保它工作正常。测试完成后删除主机文件项

  • 使用DNS名称服务器服务切换DNS。编辑分区文件,将套件服务器的URL指向新服务器的IP地址