You can create render textures that are larger than the window to which they are drawn.
If you only want to show a part of it (to allow full-sized viewing with scrolling, for example), you can set the texture rectangle of the sprite that you use to draw the render texture to the window to any part of the render texture's actual texture.
One thing to note, though, is that graphics cards have a maximum texture size that they can use; each card has their own size (it's generally one of a limited list, though). If the card that runs the application cannot create textures of 8k, your creation of a 8000x6000 texture is doomed to failure. You can check the maximum size allowed by the current graphics card (remember that if you expect others to run this application, you should account for any possible size):
sf::Texture::getMaximumSize(). Note that 8k textures are on the top-end of things.
Another approach is to use an sf::Image. This has no real limit to its size (limited possibly by memory availability more than anything else) but the approach can be slower.
You could use a render texture the size of the window and then "save" that part on to that part of the image before scrolling and then update the render texture from image data. Again, this is likely to be too slow but would depend on your requirements and your implementation.