root用户对bin目录下可执行文件uxdb赋予修改nice值的权限:
sudo setcap cap_setuid,cap_sys_nice+ep /home/uxdb/uxdbinstall/dbsql/bin/uxdb
uxdb用户创建三个测试用户:
create user test1 password '1qaz!QAZ'; create user test2 password '1qaz!QAZ'; create user test3 password '1qaz!QAZ';
打开三个终端进入当前安装bin目录下,分别以test1、test2、test3用户同时登录数据库。
查看三个用户的优先级ps -elf | grep test:
可以看到三个用户的优先级一样,PRI为80(默认值),NI为0(默认值)。
以uxdb用户登录,为test1、test2、test3设置不同的nice值:
select ux_set_user_nice('test1', 10); select ux_set_user_nice('test2', -5); select ux_set_user_nice('test3', -15);
重启数据库使上述配置生效。
再次在三个终端分别使用test1、test2、test3登录数据库。
再其他终端查看三个用户的优先级ps -elf | grep test。
上述结果可以看到test1的PRI为90,NI为10;test2的PRI为75,NI为-5;test3的PRI为65,NI为-15。
PRI :代表进程可被执行的优先级,其值越小越早被执行。
NI :代表进程的nice值,范围是19(最低优先级)到-20(最高优先级)。默认值为0。