ini_set('memory_limit','3048M');
set_time_limit(0);
include './vendor/autoload.php';
define('DS', DIRECTORY_SEPARATOR);
defined('APP_PATH') or define('APP_PATH', dirname($_SERVER['SCRIPT_FILENAME']) . DS);
defined('ROOT_PATH') or define('ROOT_PATH', dirname(realpath(APP_PATH)) . DS);
defined('RUNTIME_PATH') or define('RUNTIME_PATH', ROOT_PATH . 'runtime' . DS);
defined('LOG_PATH') or define('LOG_PATH', RUNTIME_PATH . 'log' . DS);
define('IS_CLI', PHP_SAPI == 'cli' ? true : false);
define('IS_WIN', strpos(PHP_OS, 'WIN') !== false);
use Elasticsearch\ClientBuilder;
use think\Db;
$config = [
// 数据库类型
'type' => 'mysql',
// 服务器地址
'hostname' => '127.0.0.1',
// 数据库名
'database' => 'tp51111',
// 用户名
'username' => 'root',
// 密码
'password' => '123456',
// 端口
'hostport' => '',
// 连接dsn
'dsn' => '',
// 数据库连接参数
'params' => [],
// 数据库编码默认采用utf8
'charset' => 'utf8',
// 数据库表前缀
'prefix' => '',
// 数据库调试模式
'debug' => true,
// 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
'deploy' => 0,
// 数据库读写是否分离 主从式有效
'rw_separate' => false,
// 读写分离后 主服务器数量
'master_num' => 1,
// 指定从服务器序号
'slave_no' => '',
// 自动读取主库数据
'read_master' => false,
// 是否严格检查字段是否存在
'fields_strict' => true,
// 数据集返回类型
'resultset_type' => 'array',
// 自动写入时间戳字段
'auto_timestamp' => false,
// 时间字段取出后的默认时间格式
'datetime_format' => 'Y-m-d H:i:s',
// 是否需要进行SQL性能分析
'sql_explain' => false,
];
$db = Db::connect($config);
$logCount = $db->query('select count(document_id) as count from erp_backend_log');
$cc = (int)($logCount[0]['count']/100)+1;
$params = ['127.0.0.1:9200'];
$client = ClientBuilder::create()->setHosts($params)->build();
$index = 'backend_log';
$type = 'data';
for ($i = 0; $i
$logs = $db->query('select * from erp_backend_log limit '.($i*100).',100');
foreach ($logs as $log){
//del_document($client, $index, $type, $log['document_id']);
add_document($client, $index, $type, $log['document_id'], $log);
file_put_contents('test_log',$log['document_id'].'已完成'."\r\n",FILE_APPEND);
}
}
function add_document($client, $index, $type, $id, $row)
{
$params['index'] = $index;
$params['type'] = $type;
$params['id'] = $id;
$params['body'] = $row;
return $client->index($params);
}
function del_document($client, $index, $type, $id)
{
$delParams['index'] = $index;
$delParams['type'] = $type;
$delParams['id'] = $id;
return $client->delete($delParams);
}
本文为看恩吧原创文章,转载无需和我联系,但请注明来自knsay.com