Puncte:2

Cum pot șterge utilizatorii în bloc?

drapel kr

Site-ul meu a fost spart și am avut un serviciu online de curățare. Cu toate acestea, acum are peste 150.000 de conturi de utilizator, dintre care cea mai mare parte nu au nicio atribuire de rol. Cum șterg aceste conturi și conținutul lor?

PS: Soluțiile Drush sunt apreciate și binevenite, dar deocamdată aș prefera răspunsuri non-Drush.

Am încercat sugestia 1 la Cum să ștergeți utilizatorii „blocați” în bloc? dar ambele opțiuni sunt consumatoare de timp și modulul VBO părea să se blocheze. Sugestia 2 pare a fi cea mai rapidă opțiune, dar /core/modules/user/user.admin.inc fișierul nu există în Drupal 8.7.

Puncte:4
drapel cn

A trebuit să fac asta recent. Am găsit cel mai ușor lucru a fost să construiesc o listă cu adresele de e-mail de eliminat într-un fișier text.

_remove_user_emails.txt

[email protected]
[email protected]
[email protected]

Apoi procesați-le cu scriptul simplu de mai jos:

remove_users.sh

IFS="
"
pwd
pentru utilizator în `cat _remove_user_emails.txt`
do
  echo „Se anulează utilizatorul: $user”
  ./vendor/bin/drush -y user-cancel ${user}
Terminat

Puteți obține lista așa cum doriți. Folosesc adesea phpmyadmin și doar scriu o interogare pentru ceea ce am nevoie și o export. Ceva de genul:

SELECTAȚI DISTINCT u.mail
DE LA utilizatori u
LEFT JOIN user_roles ur pe u.uid = ur.uid
UNDE u.uid > 1
AND u.status <> 0
SI ur.rid ESTE NUL
apaderno avatar
drapel us
Cu peste 150000 de conturi de utilizator, nu pare fezabil să scrieți adresele de e-mail într-un fișier text și apoi să ștergeți conturile de utilizator cu Drush.
Mandock D. avatar
drapel kr
@Ryan, am încercat sugestia ta pe site-ul meu de testare, a trebuit să mă adaptez pentru timpul de execuție, etc, etc în fișierele mele de configurare... ceva la care nu am acces pe site-ul live. Proces anulat după aproximativ 2 ore de rulare. Mulțumesc, dar sper să pot obține o soluție mai rapidă și mai eficientă.
drapel cn
Pentru a elimina utilizatorii, trebuie să rulați toate cârligele. Am considerat că drush este cel mai rapid mod de a face asta. Poate că în loc să puneți 150.000 de utilizatori într-un fișier, încercați în schimb un set mai mic, cum ar fi 10.000 utilizatori. Site-ul meu a avut aproximativ 50.000 de utilizatori și am eliminat 30.000 în aproximativ 15 ore YMMV. Nu sunt sigur de ce a trebuit să editați ora de execuție, acesta este un script bash, care va rula php peste și iar față de un fir lung.
hotwebmatter avatar
drapel nr
De ce să anulați execuția scriptului după două ore? Aș recomanda să-l lași să funcționeze peste noapte.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.