0

ここで別の投稿から取得したbashコードを使用しています

#!/bin/sh

users=$(mysql --user=user --password=password --database=$db -h _IP ADDRESS) -s --       execute="select$ users from db limit 1;"|cut -f1)

echo "$users"

データベースはDBで、テーブルは基本的にユーザーですテーブルからユーザー数を取得できるようにしたいのですが、スクリプトを実行すると取得されます

ERROR 1049 (42000): Unknown database 'execute=select users from db limit 1;'

私が間違っていること、またはそれを行うためのより良い方法について何か考えはありますか? 私が行った場合

select * form users;

mysqlサーバー自体では、ユーザー数であるセット(0.00秒)12で12行が返されるため、スクリプトでデータベースDBのユーザーテーブルをクエリし、行数、つまり12を返すだけです。

4

3 に答える 3

1
users_count=$(
    mysql --user user_name --password=password  -h x.x.x.x <<EOF | tail -n 1
    select count(1) from mysql.user;
EOF
)
于 2013-09-28T19:10:05.897 に答える
0

パラメータの順序が間違っているようです...

MYSQL は、「execute=select users from db limit 1;」と言っています。データベース パラメータの位置にあります。

次のようなことを試してください:

mysql --user user_name --password=password -e 'select users from db_schema.table limit 1;'
于 2013-09-28T19:03:42.450 に答える