Michael's answer is fine, but here is a more in-depth analysis.
We want to look at the connected components of the graph whose vertices are the reals and where there is an arrow from $x$ to $y$ when $y = f^2(x) = x^2-2$.
It is clear that $f$ has to send connected components to connected components, so that given one component, either $f$ sends it onto itself (though it is not always possible), either $f$ goes back and forth with another component. Furthermore if two components are isomorphic (there is a bijective $\pi : X \to Y$ commuting with $f^2$), then we can always do so : pick $f_X = \pi$ and $f_Y = \pi^{-1} \circ f^2$.
If $|x|>2$, $x$ is among a component of the shape
$\begin{array}
& &\cdot & & \cdot & & \cdot & & \cdot & \\
&\downarrow & & \downarrow & & \downarrow & & \downarrow & \\
\cdots \rightarrow &\cdot &\rightarrow &\cdot &\rightarrow& \cdot& \rightarrow &\cdot \rightarrow &\cdots \end{array}$
where the top row has negative reals, the bottom row has positive reals, the limit on the left is $\pm 2$ and the limit on the right is $\pm \infty$.
There are uncountably many such components, so we can pair them up and define $f $ appropriately ($f$ can even be chosen continuous on $(-\infty ; -2) \cup (2 ; \infty)$)
For $|x| \le 2$, we have $f^2(2\cos a) = 2\cos(2a)$.
If $a/\pi$ is irrational, $2\cos a$'s component is made of all the $2\cos(2^ka + b\pi)$ with $k \in \Bbb Z$ and $b$ a dyadic rational, and takes the form of an infinite complete binary "tree" (it's not a tree because it's infinite both ways, and there is no root). Again, there are uncountably many such components, so using the axiom of choice, we can partition them into isomorphic pairs and define a square root $f$.
Next, we have the components with rational $a/\pi$. Those have cycles.
If $(f^2)^n(x) = x$, then $(f^2)^n(f(x)) = f((f^2)^n(x)) = f(x)$, so $n$-cycles of $f^2$ have to be sent to $n$-cycles of $f^2$. Moreover, if $n$ is even, you can't send an $n$-cycle to itself, so you necessarily need another $n$-cycle in another component.
There are two (non-isomorphic) components with a $1$-cycle,
$ \cdots \rightrightarrows 0 \rightarrow -2 \rightarrow 2 \\
\cdots \rightrightarrows 1 \rightarrow -1 $
(with infinite complete binary trees on the left)
The first one can't be mapped to itself, but we can pair those up by $0 \rightarrow 1 \rightarrow -2 \rightarrow -1 \leftrightarrow 2$
All the other cycles component are $n$-cycles with infinite complete binary trees attached to each vertex of the cycle. And even for odd length cycles, you can't send the component to itself. In any case, you need to pair them up in order to define $f$.
It is quick to compute the numbers of cycles of length $k$ : they are all neatly embedded in $(\Bbb Z / (2^k \pm 1) \Bbb Z,\times)/\{\pm 1\}$ via the map $(x \mod m) \mapsto 2\cos(2x\pi/m)$. So we pick those two semigroups, remove every smaller-length cycle they contain, get the number of elements left, and divide by $k$ to get the number of cycles.
We get $1,2,3,6,9,18,30,\ldots$ cycles of respective length $2,3,4,5,6,7,8,\ldots$. Unfortunately, it seems we often get an odd number of cycles of a given length. Simply knowing there is only one $2$-cycle (between $2\cos{\frac{2\pi}5}$ and $2\cos{\frac{4\pi}5}$) shows that we can't define $f$ properly.