Are there any major cities that are not Democratic, that are not in Oklahoma?
San Diego
It's really the suburbs that are more Republican. San Diego itself is relatively Democratic.
Republicans are good at winning the mayoral elections there though.
San Diego has been a Democratic city since 1992 where the D's finally got the registration edge.
The San Diego area, including areas around it like Carlsbad, Santee, Coronado, Chula Vista, etc. is Republican however. If anything it's like the OC, but with a 58% D city that is 40% of the county's pop.
With that said, it is more GOP than normal for a big city.
Reasons?
A lot of suburban areas are included as part of the city.
There aren't that many Blacks for a big city.
It's economy is defense-driven.
It most likely economically conservative, there is an anti-tax attitude, even more than other areas.
It does a good job of attracting Whites from conservativish areas.