GBase 8s重建sysuser库的方法

因sysuser库出现异常,需要重建sysuser库,请按以下方式:
1,停止使用USERMAPPING,全使用操作系统验证。

onmode -wf USERMAPPING=OFF

2,去除字符集相关的环境变量

unset DB_LOCALE
unset CLIENT_LOCALE
unset GL_USEGLU

3,删除sysuser库

echo 'drop database sysuser;' | dbaccess - -

4,如果原环境变量中有GL_USEGLU,必须要重启数据库

onmode -ky
oninit -vy

5,确保环境中没有GL_USEGLU、DB_LOCALE和CLIENT_LOCALE

dbaccess - $GBASEDBTDIR/etc/sysuser.sql

检查sysmaster:sysdatabases表中的sysuser的标识。确认只有is_logging值为1,其它为0

6,如果业务库使用了GL_USEGLU,必要重启数据库,重新加载用户环境变量DB_LOCALE/CLIENT_LOCALE/GL_USEGLU

7,重新启用USERMAPPING

onmode -wf USERMAPPING=ADMIN
onmode -cache surrogates

创建默认内部用户映射

echo "CREATE DEFAULT USER WITH PROPERTIES USER daemon HOME '/home/gbase/users';" | dbaccess sysuser -

然后就可以重新创建内部用户。

标签: GBase, sysuser, GL_USEGLU

添加新评论