5. First solution. Let's estimate the number of 2016-digit squares. There are no fewer than

$$
10^{2016 / 2}-10^{2015 / 2}-1>10^{1000}
$$

The number of different sets of 2016 digits is no more than the number of sets where each digit appears no more than 2016 times, which is $2017^{10}$. Therefore, there exists a set of 2016 digits such that by permuting them, we can obtain no fewer than $10^{1000} / 2017^{10}>10^{1000} / 10^{100}=10^{900}$ squares, and certainly 2016.
The second solution. Let's present such a 2016-digit number explicitly. Consider all 1008-digit numbers of the form $x_{a, b}=4 \cdot 10^{1007}+10^{a}+10^{b}$, where $1007>a>b \geqslant 0, 2a \neq 1007+b$. Note that

\[
\begin{aligned}
x_{a, b}^{2}=16 \cdot 10^{2014}+8 \cdot 10^{1007+a}+ & 8 \cdot 10^{1007+b}+ \\
& +10^{2 a}+2 \cdot 10^{a+b}+10^{2 b}
\end{aligned}
\]

Due to the condition $1007>a>b$, we have the inequalities

\[
\begin{aligned}
& 2014>1007+a>1007+b>a+b>2 b \\
& 2014>1007+a>2 a>a+b>2 b
\end{aligned}
\]

From these inequalities, as well as from the condition $2a \neq 1007+b$, it follows that all the terms in the right-hand side of equation (1) correspond to different digits of the number $x_{a, b}^{2}$. Therefore, for all admissible $a, b$, the number $x_{a, b}^{2}$ consists of a fixed set of digits: three ones, one two, one six, two eights, and 2009 zeros.

The total number of admissible pairs of numbers $a, b$ is no less than

\[
\frac{1007 \cdot 1006}{2}-1007=1007 \cdot 502
\]

Thus, from any number of the form $x_{a, b}^{2}$, by permuting the digits, one can obtain $1007 \cdot 502 > 2016$ different 2016-digit perfect squares.