Belirli bir önek ile sadece tabloları Mysqldump joker / Mysqldump?
Temizlik ben bu büyük, karmaşık bir veritabanı var. Tek DB Cyd ile Profesyonel Kurumsal birleştirilmesi sonucu 500 tablolar, ev sahipliği yapmaktadır.
Kötü şeyler yapmak için, kullanılmakta olan 70 Cyd tabloları bir dizi var. Bu bak_
ile öneki.
Sadece bak_
bu tabloları silmek kolay olacak, ama ben istiyorum 'bir bak' onları ilk (orada ne yaptığını görüyor musun?). Aklımda böyle bir komut hayal edebiliyorum:
mysqldump -u username -p mydatabase bak_*
Ama bu işe yaramıyor. Bunu yapmanın en iyi yolu ne olurdu? Teşekkürler!
EDİT: Evet, açıkça 70 tablolar listesi edebilirim, ya ~430 tablolar hariç, ama daha iyi bir yol için mümkünse bunu yapmak için arıyorum.
CEVAP
Komut satırı birbiri ardına, ama joker olmadan tablo adları belirtebilirsiniz.
mysqldump databasename table1 table2 table3
Ayrıca eğer daha kısa olsaydı --ignore-table
kullanabilirsiniz.
Başka bir fikir gibi bir şey ile bir dosya içine tabloları elde etmektir
mysql -N information_schema -e "select table_name from tables where table_schema = 'databasename' and table_name like 'bak_%'" > tables.txt
Dosyayı düzenlemek ve bir satır tüm veritabanları. O zaman yapın
mysqldump dbname `cat tables.txt` > dump_file.sql
Bir satırda tabloları (önerilmez) bırakmak için aşağıdakileri yapabilirsiniz
mysql -NB information_schema -e "select table_name from tables where table_name like 'bak_%'" | xargs -I"{}" mysql dbname -e "DROP TABLE {}"
sadece mysqldump veri...
Bir şekilde git sadece belirli dosyala...
nasıl yerel makineden uzak db mysqldum...
MYSQLDUMP parola istemi olmadan...
Nasıl belirli bir repo için GİT_SSL_NO...