登录到SAP HANA hdbsql line实用程序时更改并确认密码

2020-08-13 13:41发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我正在尝试使用命令行登录hdbsql租户数据库,发布密码更改,它提示我通过密码确认提示手动更新密码,例如:

  hdbsql -i 02 -u SYSTEM -p密码123
 您必须更改密码。
 输入新密码:
 确认新密码: 

我想使用shell命令输入密码并确认密码,但是我一直遇到语法问题,并且密码被视为db命令本身,而不是输入字段。 我们如何通过外壳输入密码以成功更新密码? 我尝试过:

回显" Aditya @ 1 \ nAditya @ 1" |  hdbsql -i 02 -u系统-p Password123

 欢迎使用SAP HANA数据库交互式终端。
                                           
 键入:\ h以获取命令帮助
        \ q退出

 * 257:sql语法错误:" Aditya"附近的语法不正确:第1行第1行(在pos 1)SQLSTATE:HY000 

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我正在尝试使用命令行登录hdbsql租户数据库,发布密码更改,它提示我通过密码确认提示手动更新密码,例如:

  hdbsql -i 02 -u SYSTEM -p密码123
 您必须更改密码。
 输入新密码:
 确认新密码: 

我想使用shell命令输入密码并确认密码,但是我一直遇到语法问题,并且密码被视为db命令本身,而不是输入字段。 我们如何通过外壳输入密码以成功更新密码? 我尝试过:

回显" Aditya @ 1 \ nAditya @ 1" |  hdbsql -i 02 -u系统-p Password123

 欢迎使用SAP HANA数据库交互式终端。
                                           
 键入:\ h以获取命令帮助
        \ q退出

 * 257:sql语法错误:" Aditya"附近的语法不正确:第1行第1行(在pos 1)SQLSTATE:HY000 
付费偷看设置
发送
6条回答
落灬小鱼
1楼-- · 2020-08-13 14:30

以下内容对我有用。

创建用户USER3密码" Pass.word3";

\ q

hdbsql -n myhost:myport -e -u User3 -p" Pass.word3" "

我在 https://stackoverflow.com/questions/63138354/how-to-escape-special-characters-in-hana-db-password-using-sql-query

如果 如果您不想在初次尝试使用新用户登录时更改密码,则可以使用

创建用户USER4密码Password4 no force_first_password_change;

另一个 考虑的选项是在与hdbsql连接时使用hdbuserstore存储连接信息(主机,端口,用户名和密码)。

这在以下教程中显示:

< a hraf=" https://developers.sap.com/tutorials/hana-clients-hdbsql.html#24093d80-fbf1-4667-87ff-0ae8a310ef60"> https://developers.sap.com/tutorials/hana-clients -hdbsql.html#24093d80-fbf1-4667-87ff-0ae8a310e f60


希望有帮助,

Dan van Leeuwen

超级大咸鱼
2楼-- · 2020-08-13 14:34

您问了一个问题。 不要忘记将对您最有帮助的答案标记为正确。 谢谢!

对于读者而言,在您离开之前,请不要忘记对答案进行上下投票。 您也可以对这个问题进行投票。
谢谢!

Tong__Ming
3楼-- · 2020-08-13 14:32

你好Aditya,

您尝试使用下面的条款" NO FORCE_FIRST_PASSWORD_CHANGE"吗?

===
ALTER USER <用户名>密码" "否FORCE_FIRST_PASSWORD_CHANGE;
===

希望这对您的shell脚本工作有用。

最好的问候,
Vivek Sahu

昵称总是被占用
4楼-- · 2020-08-13 14:11

嗨Dan van Leeuwen,

感谢您的投入。 但是,只有在租户密码及其确认提示中才会出现密码中带有圆点的问题,这确实很奇怪,除非有文档指定该限制。 在我的情况下,我们需要SYSTEM用户才能进行管理员访问,所以我们不能再找另一个用户。

此致

Aditya

5楼-- · 2020-08-13 14:12

您好专家

是否有按照我的初始请求提供密码和确认的经过测试的方法,或者有一种方法可以使SAP HANA禁止通过hdbsql登录时再次提示租户更改密码。 我还注意到,如果我们手动键入密码和确认,请点""。 没有被接受。 这是已知限制吗?

hdbsql -i 02 -u SYSTEM -p Aditya123

您必须更改密码。

输入新密码:

确认新密码:

* 257:sql语法错误:"。1"附近的语法不正确:第1行col 34(在pos 34处)SQLSTATE:HY000

* 257:sql语法错误:"。1"附近的语法不正确:第1行col 34(在pos 34处)SQLSTATE:HY000

我们非常感谢您的帮助!

此致

Aditya

xfwsx85
6楼-- · 2020-08-13 14:17

嗨Vivek,

仍然出现提示,请参考以下详细步骤:

/usr/sap/TST/HDB02> hdbsql -i 02 -u SYSTEM -p Aditya1

欢迎使用SAP HANA数据库交互式终端。

类型:\ h以获取命令帮助

\ q退出

hdbsql TST =>使用重新配置更改系统更改配置('indexserver.ini','SYSTEM')SET('密码策略','force_first_password_change')='false';

受影响的0行(总时间53.364毫秒;服务器时间50.887毫秒)

hdbsql TST =>退出

tstadm @ vhtstdb:/usr/sap/TST/HDB02> hdbsql -i 02 -u SYSTEM -p Aditya @ 1 -d SYSTEMDB

欢迎使用SAP HANA数据库交互式终端。

类型:\ h以获取命令帮助

\ q退出

hdbsql SYSTEMDB => alter system alter configuration('nameserver.ini','SYSTEM')SET('password policy','force_first_password_change')='false'并重新配置;

受影响的0行(总时间53.260毫秒;服务器时间51.283毫秒)

hdbsql SYSTEMDB =>更改系统停止数据库TST

受影响的0行(总时间13.065803秒;服务器时间13.063846秒)

hdbsql SYSTEMDB =>更改数据库TST系统用户密码" Mypasswd123"

受影响的0行(总时间12.085655秒;服务器时间12.077080秒)

hdbsql SYSTEMDB =>退出

/usr/sap/TST/HDB02> hdbsql -i 02 -u SYSTEM -p Mypasswd123

您必须更改密码。

输入新密码:

一周热门 更多>