Podrías intentar algo como esto:
DELIMITER //
CREATE PROCEDURE pagination(
INT pageno INT
)
BEGIN
DECLARE pages INT;
DECLARE pagefrom INT;
SET pages = 1000; -- get this many records at a time
SET pagefrom = pageno * pages; -- 2 * 1000 = 2000
SELECT *
FROM car
LIMIT pagefrom, pages;
END //
DELIMITER ;
CALL pagination(2);
Este ejemplo obtendrá registros de 2000 a 3000