若是使用Sqoop刪除mysql中的數據,而且傳遞動態日期參數,則使用下方的方法:python
建立一個sh文件,內容以下:mysql
#!/bin/sh ## 環境變量生效 . /etc/profile #【調度刪除導入所在月數據量】 deletym=$(date -d last-day +%Y%m) sqoop eval --connect jdbc:mysql://112.112.10.127:3060/yangyang8848--username root --password yangyang8848--query "delete from yangyang8848 Where ym = '$deletym'" sqoop eval --connect jdbc:mysql://112.112.10.127:3060/yangyang8848--username root --password yangyang8848--query "delete from yangyang8848 Where ym = '$deletym'" sqoop export --connect "jdbc:mysql://112.112.10.127:3060/yangyang8848?useUnicode=true&characterEncoding=utf-8" --username root --password yangyang8848 --table yangyang8848 -hcatalog-database yangyang8848 --hcatalog-table yangyang8848 sqoop export --connect "jdbc:mysql://112.112.10.127:3060/yangyang8848?useUnicode=true&characterEncoding=utf-8" --username root --password yangyang8848 --table yangyang8848 -hcatalog-database yangyang8848 --hcatalog-table yangyang8848
而後經過命令執行sh文件,可能須要sh文件提權,而後才能執行!sql