Недавно мне пришлось переместить пространство имен Cloudflare KV из одной среды в другую, вы также можете использовать это для переноса ключей между учетными записями. Для этого я создал новый ключ API на панели инструментов Cloudflare с доступной только для чтения областью моих рабочих процессов и пространств имен KV, затем я создал новый рабочий процесс, в котором я хотел хранить записи. Это должен быть Worker, на который вы хотите мигрировать.
Вы должны опубликовать новый Worker и создать для него новое пространство имен KV. Следующий пример скрипта выполняет следующие действия:
- выполняется из нового Worker
- вызывает Cloudflare REST API для получения ключей и значений KV из OLD Worker
- перебирает ключи
- получает имя и значение
- сажает их в новый КВ
Этот сценарий должен быть просто руководством и, вероятно, нуждается в обновлении для каждого варианта использования. В моем случае я также использовал метаданные KV для хранения типа содержимого файла, поэтому я также переношу это.
Я сохранил ключ API старой среды в секрете с именем oldApiKey
, например так:
wrangler secret put oldApiKey
Идентификатор учетной записи и идентификатор пространства имен можно получить из панели инструментов Cloudflare, и их необходимо вручную ввести в Worker. Для меня это была разовая задача, и я не выполняю ее постоянно. Кроме того, если у вас много ключей, вам может понадобиться разбиение на страницы в сценарии миграции, максимальное количество ключей, возвращаемых API, ограничено 1000
.