Tüm veritabanlarında SQL Sorgusu çalıştırma


11

CPanel ve phpmyadmin kullanarak bir hosting hesabım var.

Bu hesap altında 50 veritabanım var, hepsi WordPress.

Bu sorguyu, parola güncelleştirmek için tüm veritabanları çalışır şekilde değiştirilmiş gerekir.

GÜNCELLEME 'wp_users' SET 'user_pass' = MD5 ('somepassword') NEREDE 'user_login' = 'admin' LIMIT 1;

Tek tek geçmek yerine tüm veritabanlarını hedefleyebilecek bir çözüm umuyoruz.

teşekkür ederim

Yanıtlar:


11

CPanel ve phpmyadmin hakkında bir şey söyleyemem ama genel olarak basit bir senaryo yazarak yapabilirim.

Senin için bir kabuk senaryosu yazdım

#!/bin/bash

# mysql credential 
user="root"
pass="root"

# list of all databases
all_dbs="$(mysql -u $user -p$pass -Bse 'show databases')"        

for db in $all_dbs
     do
        if test $db != "information_schema" 
            then if test $db != "mysql" 
            then mysql -u$user -p$pass $db -sN -e "UPDATE wp_users SET user_pass = MD5('somepassword') WHERE user_login ='admin' LIMIT 1;"
        fi
    fi  
     done

Ev sahibim kabuk erişimi verme konusunda garip ve böyle özel komutlar yapmak için ücret alıyorlar. Zaten her bir veritabanını gözden geçirmeye ve bunları manuel olarak güncellemeye başladım. Bana yardım ettiğin için teşekkür ederim :)
Billy

8

Bunu çalıştırmayı deneyin ve daha sonra çıktıyı phpMyAdmin'e geri yapıştırın

SELECT CONCAT('UPDATE `',     
    schema_name, '`.\'wp_users\' SET \'user_pass\' = MD5(\'somepassword\') WHERE \'user_login\' =\'admin\' LIMIT 1;')
FROM information_schema.schemata
WHERE schema_name NOT IN ('information_schema','mysql','performance_schema','test');

veya bu sunucuya kod yükleyebiliyorsanız , Shlomi Noach tarafından Ortak Şema yükleyin ve aşağıdaki QueryScript'i yürütün

call common_schema.foreach( 'schema', "UPDATE `${schema}`.`wp_users` SET 'user_pass' = MD5('somepassword') WHERE 'user_login' ='admin' LIMIT 1");

2
Bunun ilk bölümünü kabul ediyorum, şema_adı içeren bir SQL sorgusu oluşturun ve bunu çalıştırın. Gerekirse Excel'de bile oluşturabilirsiniz - bir sütuna koyabileceğiniz 50 db adının tümüne sahip olduğunuzu varsayarak ...
Dave Rix
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.