In order to provide low-power wide area network (LPWAN) services, 3GPP adopted the Narrow-Band Internet of Things (NB-IoT) standard in 2016. NB-IoT is expected to become the transmission communication standard for providing a large number of IoT devices in 5G networks. However, development of NB-IoT is still in its earlier stage and encounters several challenges. First, NB-IoT is designed for machine type communication. Generally, connection and transmission delays are not the primary consideration for this type of communication. Thus, it is not able to meet different delay requirements of different types of IoT applications. For example, for life-threatening or life-saving applications, they would require very high reliable and low latency transmission of emergency messages. Secondly, when a user equipment wants to associate to a NB-IoT network, it must synchronize with the regional base station (eNB) through the random access channel (RACH) procedure. A large number of IoT devices will cause a big challenge to the RACH procedure. Therefore, in this paper, we aim to improve the RACH procedure to handle a large number of IoT devices without affecting the transmission delay of emergent messages. We propose a Dynamic RACH Resource Allocation (DRRA) scheme which integrates with resource allocation scheme and Access Class Barring (ACB) scheme to improve the delay and throughput of the RACH procedure. Our simulation results show that the proposed DRRA scheme is able to achieve higher access success rate, higher system throughput, and low transmission delay for emergent message as compared to the original RACH procedure.