Saya mengalami ralat semasa memasang Oracle Grid Infrastructure untuk menyemak kekangan Ini pada asasnya bermakna bilangan maksimum deskriptor fail terbuka ialah 1024, dan keperluannya ialah 65536.
Jadi laksanakan ulimit -a di bawah pengguna gird, dan bilangan maksimum fail yang boleh dibuka ialah 1024, yang merupakan nilai lalai; laksanakan ulimit -n 65536 dan tiada pengubahsuaian dibenarkan , dan laksana ulimit -a untuk memaparkan Ia adalah 65536, dan ia masih 1024 apabila dilaksanakan di bawah pengguna grid. Pada masa itu, saya terfikir untuk menggunakan sudo untuk melaksanakan, memberikan semua kebenaran kepada pengguna gird, dan melaksanakan ulimit -n 65536 masih melaporkan ralat.
Kemudian saya teringat bahawa dalam fail konfigurasi /etc/profile, terdapat perintah ulimit -n 65536 untuk oracle, seperti berikut:
jika [ $USER = "oracle" ];
jika [ $SHELL = "/bin/ksh" ];ulimit -p 16384
ulimit -n 65536
lain
ulimit -u 16384 -n 65536
fi
umask 022
fi
Selepas menambah pengguna grid, sumber /etc/profile
jika [ $USER = "oracle" ] ||. [ $USER = "grid" ] ;
jika [ $SHELL = "/bin/ksh" ];ulimit -p 16384
ulimit -n 65536
lain
ulimit -u 16384 -n 65536
fi
umask 022
fi
Melaksanakan ulimit -a pada grid masih 1024. Kemudian, selepas menyemak langkah pemasangan, saya mendapati bahawa saya terlupa untuk menambah pengguna grid dalam /etc/security/limits cuma tambah yang berikut:
grid lembut nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
Nampaknya masalah skop, meningkatkan deskriptor fail.
Atas ialah kandungan terperinci Kaedah - Tingkatkan bilangan maksimum deskriptor fail terbuka di bawah Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!