Maximise bug

When I execute the following command, I get a numerical output as follows:

In[28]:= Maximize[{n^3, n^3 <= 3110400000000}, n, Integers]

Out[28]= {3110217954173, {n -> 14597}}

But if I change the function to maximise as follows:

In[30]:= Maximize[{n^2, n^2 <= 3110400000000}, n, Integers]

Out[30]= Maximize[{n^2, n^2 <= 3110400000000}, n, Integers]

Why do I not get an answer for n in the latter case?

Instead of Maximize, you can use

In[6]:= IntegerPart[3110400000000^(1/3)]

Out[6]= 14597

In[7]:= IntegerPart[Sqrt[3110400000000]]

Out[7]= 1763632