- بابک سیدی نژاد
- 18 فروردین 1401
چگونه یک ContentLibrary را از دیتابیس VCSA حذف کنیم
ممکنه با این مشکل مواجه شده باشید که نیاز به حذف ContentLibrary باشد اما از داخل vCenter امکان حذف وجود ندارد در این مرحله تنها راهکار حذف Object از طریق دیتابیس میباشد.
ابتدا از طریق فرمان زیر به دیتابیس متصل میشویم .
opt/vmware/vpostgres/current/bin/psql -d VCDB -U postgres/
سپس از طریق پرسمان زیر یک لیست از ContentLibrary ها به همراه ID میگیریم:
VCDB=# select id,name from cl_library;
id | name
————————————–+—————
061c30a2-be31-487a-b0f3-404e7264d42d | LabContentDS1
d8f7c5d-c926-49c9-b23b-b2858465bff5 | content20
(2 rows)
دراین مرحله Id مربوطه به Storage که ContentLibrary برروی آن است مشخص میکنیم :
VCDB=# select * from cl_library_storage;
library_id | storage_id
————————————–+————————————–
c30a2-be31-487a-b0f3-404e7264d42d | 25b6107b-7bb6-450e-9776-54520f65b1e2061
0d8f7c5d-c926-49c9-b23b-b2858465bff5 | 6fa822a2-2cba-44ef-a5bd-6b7812e2c234
(2 rows)
در اینجا میخواهیم storageui مربوط به Datastore را پیدا کنیم تا به کمک آن درمرحله بعد نام Datastore مشخص گردد:
VCDB=# select * from cl_storage;
در این مرحله نام Datastore مشخص میگردد :
VCDB=# select id,name from vpx_datastore where id=744
id | name
—–+———————-
744 | Lab-Storage
(1 row)
اکنون با توجه به اطلاعاتی که بدست آوریم نوبیت به حذف رکوردها از دیتابیس و درنهایت حذف ContentLibrary :
VCDB=# delete from cl_library_storage where library_id=’0d8f7c5d-c926-49c9-b23b-b2858465bff5’;
DELETE 1
VCDB=# delete from cl_storage where id=’6fa822a2-2cba-44ef-a5bd-6b7812e2c234’;
DELETE 1
VCDB=# delete from cl_library where id=’0d8f7c5d-c926-49c9-b23b-b2858465bff5’;
DELETE 1
اکنون بعد از Login به محیط vcsa در بخش Content library میبینیم که حذف شده و یا اینکه مجددا همین جا میتونیم Select بگیریم و وضعیت ببینیم .
VCDB=# select id,name from cl_library;
id | name
————————————–+—————
c30a2-be31-487a-b0f3-404e7264d42d | LabContentDS1061
(1 row)