We present a deterministic dynamic algorithm for maintaining a (1+ǫ)f -approximate minimum cost set cover with O(f log(Cn)/ǫ 2 ) amortized update time, when the input set system is undergoing element insertions and deletions. Here, n denotes the number of elements, each element appears in at most f sets, and the cost of each set lies in the range [1/C, 1]. Our result, together with that of Gupta et al. [STOC'17], implies that there is a deterministic algorithm for this problem with O(f log(Cn)) amortized update time and O(min(log n, f ))-approximation ratio, which nearly matches the polynomial-time hardness of approximation for minimum set cover in the static setting. Our update time is only O(log(Cn)) away from a trivial lower bound.Prior to our work, the previous best approximation ratio guaranteed by deterministic algorithms was O(f 2 ), which was due to Bhattacharya et al. [ICALP'15]. In contrast, the only result that guaranteed O(f )-approximation was obtained very recently by Abboud et al. [STOC'19], who designed a dynamic algorithm with (1+ǫ)f -approximation ratio and O(f 2 log n/ǫ) amortized update time. Besides the extra O(f ) factor in the update time compared to our and Gupta et al.'s results, the Abboud et al. algorithm is randomized, and works only when the adversary is oblivious and the sets are unweighted (each set has the same cost).We achieve our result via the primal-dual approach, by maintaining a fractional packing solution as a dual certificate. This approach was pursued previously by Bhattacharya et al. and Gupta et al., but not in the recent paper by Abboud et al. Unlike previous primal-dual algorithms that try to satisfy some local constraints for individual sets at all time, our algorithm basically waits until the dual solution changes significantly globally, and fixes the solution only where the fix is needed.