To set several site collections to read-only mode use powershell
First, create a csv file that contains all sites URLs
Url
“Http://debug.com/sites/example1”
“Http://debug.com/sites/example2”
“Http://debug.com/sites/example3”
Second, open powershell and run the below script
Add-PSSnapin Microsoft.SharePoint.PowerShell
$Sites = import-csv “c:\temp\SiteCollections.csv”
Foreach($Site in $Sites)
{
Write-Host”Set Readonly:” $Site.Url
Set-SPSite -Identity $Site.Url -LockState “ReadOnly”
}