PHPackages                             jimchen/laravel-trigger - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. jimchen/laravel-trigger

ActiveLibrary[Database &amp; ORM](/categories/database)

jimchen/laravel-trigger
=======================

MySQL trigger base on MySQLReplication

v1.0.0(5y ago)187MITPHPPHP &gt;=7.1.0CI failing

Since May 24Pushed 5y ago1 watchersCompare

[ Source](https://github.com/JimChenWYU/laravel-trigger)[ Packagist](https://packagist.org/packages/jimchen/laravel-trigger)[ Docs](https://github.com/jimchen/laravel-trigger)[ RSS](/packages/jimchen-laravel-trigger/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (2)Versions (2)Used By (0)

laravel-trigger
===============

[](#laravel-trigger)

[![Latest Stable Version](https://camo.githubusercontent.com/74b72e743dc8e7995b1c9b1644006697a90bea047c480dba9843f99ebf9bc5ba/68747470733a2f2f706f7365722e707567782e6f72672f6a696d6368656e2f6c61726176656c2d747269676765722f76657273696f6e2e706e67)](https://packagist.org/packages/jimchen/laravel-trigger)[![Total Downloads](https://camo.githubusercontent.com/1cf3428f1e67ac529c3ab071ab9b5573d2176982c0b339dcb440c580bcfceb64/68747470733a2f2f706f7365722e707567782e6f72672f6a696d6368656e2f6c61726176656c2d747269676765722f642f746f74616c2e706e67)](https://packagist.org/packages/jimchen/laravel-trigger)[![GitHub license](https://camo.githubusercontent.com/c39da8e2110daf67bcf9505654b0bb9f542a3b1eaa385058fbbd65a8b13bccab/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f4a696d4368656e5759552f6c61726176656c2d74726967676572)](https://github.com/JimChenWYU/laravel-trigger)

Subscribe MySQL events like jQuery, base on [php-mysql-replication](https://github.com/krowinski/php-mysql-replication)

[中文说明](README-CN.md)

MySQL server settings
---------------------

[](#mysql-server-settings)

In your MySQL server configuration file you need to enable replication:

```
[mysqld]
server-id        = 1
log_bin          = /var/log/mysql/mysql-bin.log
expire_logs_days = 10
max_binlog_size  = 100M
binlog_row_image = full
binlog-format    = row #Very important if you want to receive write, update and delete row events
Mysql replication events explained https://dev.mysql.com/doc/internals/en/event-meanings.html
```

Mysql user privileges:

```
GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'user'@'host';

GRANT SELECT ON `dbName`.* TO 'user'@'host';
```

Installation
------------

[](#installation)

### Laravel

[](#laravel)

install

```
composer require jimchen/laravel-trigger
```

publish config

```
php artisan vendor:publish --provider="JimChen\Trigger\TriggerServiceProvider"
```

### Lumen

[](#lumen)

install

```
composer require jimchen/laravel-trigger
```

edit `bootstrap/app.php` add:

```
$app->register(JimChen\Trigger\TriggerServiceProvider::class);
...
$app->configure('trigger');
```

publish config and route

```
php artisan trigger:install [--force]
```

### Configure

[](#configure)

edit `.env`, add:

```
TRIGGER_HOST=192.168.xxx.xxx
TRIGGER_PORT=3306
TRIGGER_USER=username
TRIGGER_PASSWORD=password
...
```

Usage
-----

[](#usage)

```
php artisan trigger:start [-R=xxx]
```

Subscriber
----------

[](#subscriber)

```
