create procedure asset_owner_clean() begin declare _id int; -- asset list primary key declare targetid int; -- target user employee ID declare asset_owner varchar(80); declare asset_ownerid int; declare done int default false; -- set cursor traverse asset list whose owner is not null declare asset cursor for (select asset_id,owner,owner_id from all_asset where (owner is not null and owner <>'') or (owner_id is not null and owner_id <>''));
declare continue handler for not found set done = true; open asset; checkloop: loop fetch asset into _id,asset_owner,asset_ownerid; SELECT _id, asset_owner, asset_ownerid; if done then leave checkloop; end if; -- loop body start <insert statements> -- loop body end end loop checkloop; close asset; commit; end
In the case of named volumes, the first field is the name of the volume, and is unique on a given host machine. For anonymous volumes, the first field is omitted.
The second field is the path where the file or directory will be mounted in the container.
The third field is optional, and is a comma-separated list of options, such as ro.
-v $HOME/jenkins:/var/jenkins_home would map the container’s /var/jenkins_home directory to the jenkins subdirectory within the $HOME directory on your local machine, which would typically be /Users//jenkins or /home//jenkins.
RabbitMQ is one of the most popular open source message brokers. RabbitMQ is lightweight and easy to deploy on premises and in the cloud. It supports multiple messaging protocols.
Before installing RabbitMQ, you must install a supported version of Erlang/OTP. Zero-dependency Erlang RPM for RabbitMQ : this is a (virtually) zero dependency 64-bit Erlang RPM package that provides just enough to run RabbitMQ. It may be easier to install than other Erlang RPMs in most environments. It may or may not be suitable for running other Erlang-based software or 3rd party RabbitMQ plugins.
## Add apt repositories maintained by Team RabbitMQ sudo tee /etc/apt/sources.list.d/rabbitmq.list <<EOF ## Provides modern Erlang/OTP releases ## deb https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/deb/ubuntu bionic main deb-src https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/deb/ubuntu bionic main
## Provides RabbitMQ ## deb https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/deb/ubuntu bionic main deb-src https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/deb/ubuntu bionic main EOF
在Google,微博等认证门户登录成功后 颁发id token, 表示该账户通过认证, 是可以被信赖的, id token中包含用户的名字,邮箱等信息,可以个性化用户体验(personalize user experience)如在UI上显示用户姓名,在生日当天发送祝福消息等 总之与认证有关与授权无关
refresh token用以刷新access token 这对于SPA可能不足以保证refresh token的安全,可以使用refresh token的轮换机制,即在access token刷新后更新refresh token,使原refresh token不会再被攻击者利用blabla refresh token, what are they and when to use them