This is fairly straight forward in Redshift. A recursive CTE can be use to make the list of dates and some simple formatting can be used to get the fields you desire. This example makes all the dates from Jan 1, 2020 until today.
with recursive dates(dt) as
( select '2020-01-01'::date as dt
union all
select dt + 1
from dates d
where d.dt <= current_date
)
select dt, extract(year from dt) as year, extract(month from dt) as month,
decode(month, 1, 'January', 2, 'February', 3, 'March', 4, 'April', 5, 'May', 6, 'June', 7, 'July', 8, 'August', 9, 'September', 10, 'October', 11, 'November', 12, 'December') as mname,
year * 100 + month as yearmo, mname || year::text as monameyr
from dates order by dt;