I have the following code in a bash script:
    remote_home=/home/folder
    dump_file=$remote_home/my_database_`date +%F_%X`.sql
    aws_pem=$HOME/my_key.pem
    aws_host=user@host
    local_folder=$HOME/db_bk
    pwd_stg=xxxxxxxxxxxxxxxx
    pwd_prod=xxxxxxxxxxxxxxx
    
    ssh -i $aws_pem $aws_host << EOF
    mysqldump --column-statistics=0 --result-file=$dump_file -u user -p$pwd_prod -h $db_to_bk my_database
    mysql -u user -p$pwd_prod -h $db_to_bk -N -e 'SHOW TABLES from my_database' > $remote_home/test.txt
    sh -c 'cat test.txt | while read i ; do mysql -u user -p$pwd_prod -h $db_to_bk -D my_database --tee=$remote_home/rows.txt -e "SELECT COUNT(*) as $i FROM $i" ; done'
EOF
My loop while is not working because "i" variable is becoming empty. May anyone give me a hand, please? I would like to understand how to handle data in such cases.
 
    