рдкрд╛рдпрдерди sqlite3: рдзреАрдореА рдХреНрд╡реЗрд░реА рдЦреЛрдЬреЗрдВ

рд╣рд╛рдп рд╕рд╛рдерд┐рдпреЛрдВ!
рд╕рд╛рдЗрдХреНрд▓рд╛рдЗрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп, рдореБрдЭреЗ рдзреАрдореЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд▓реЙрдЧ рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░реНрдп рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред
рд╕рднреА рдЬрд╛рдирдиреЗ рд╡рд╛рд▓реЗ Google рд╕реЗ рдкреВрдЫрдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдПрдХ рднреА рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдорд┐рд▓рд╛ (рдХреНрдпрд╛ рдореИрдВ рдмреБрд░реА рддрд░рд╣ рд╕реЗ рджреЗрдЦрддрд╛ рд╣реВрдВ?)ред
рдЗрд╕рд▓рд┐рдП, рдореИрдВ рд▓реЙрдЧрд┐рдВрдЧ рдХреЗ рдЕрдкрдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
UPD: рдорджрдж рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рджреЗрд╢реА рд╕рдорд╛рдзрд╛рди APSW рдХрд╣рд▓рд╛рддрд╛ рд╣реИ

рдЫрд╡рд┐


рд╣рдо рдХрд░реНрд╕рд░ рд╕реНрддрд░ рдкрд░ рдЕрдиреБрд░реЛрдз рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдВрдЧреЗред
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрд╕ рд╢реНрд░реЗрдгреА рдХреЛ рдХреНрд╡реЗрд░реА рд╕рдордп рдЧрдгрдирд╛ рдореЗрдВ рдЬреЛрдбрд╝рдХрд░ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВред

рдЖрдпрд╛рдд sqlite3
рдЖрдпрд╛рдд рдХрд╛ рд╕рдордп

рд╡рд░реНрдЧ mycursor ( sqlite3ред рдХрд░реНрд╕рд░ ) :
рдбрд┐рдл рдПрдЧреНрдЬреАрдХреНрдпреВрдЯ ( рд╕реНрд╡рдпрдВ , * рдЖрд░реНрдЧреНрд╕, ** рдХреНрд╡рд╛рд░реНрдЧреНрд╕ ) :
рдЯрд╛рдЗрдорд╕реНрдЯрд╛рд░реНрдЯ = рд╕рдордп ред рдШрдбрд╝реА ( )
рдХреНрд╡реЗрд░реА = рд╕реБрдкрд░ ( mycursor, рд╕реНрд╡ ) ред рдирд┐рд╖реНрдкрд╛рджрд┐рдд ( * args, ** kwargs )
рдмреЗрдХрд╛рд░ = рд╕рдордп ред рдШрдбрд╝реА ( ) - рдЯрд╛рдЗрдорд╕реНрдЯрд╛рд░реНрдЯ
рдЕрдЧрд░ рдирд┐рд╖реНрдХреНрд░рд┐рдп > = 0.1 :
рдлрд╝рд╛рдЗрд▓ = рдЦреБрд▓рд╛ ( "sqlite_slow.log" , "a +" )
рдлрд╝рд╛рдЗрд▓ ред рд▓рд┐рдЦрдирд╛ ( * рдЖрд░реНрдЧреНрд╕ )
рдлрд╝рд╛рдЗрд▓ ред рд▓рд┐рдЦрдирд╛ ( "IDLE =" + str ( рдирд┐рд╖реНрдХреНрд░рд┐рдп ) + "n" )
рдлрд╝рд╛рдЗрд▓ ред рдкрд╛рд╕ ( )
рд╡рд╛рдкрд╕реА рдХреНрд╡реЗрд░реА


рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╕рднреА рдЕрдиреБрд░реЛрдз рдЬрд┐рдирдХреА рдирд┐рд╖реНрдкрд╛рджрди 0.1 рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЧрд┐рд░ рдЬрд╛рдПрдЧреАред рддрджрдиреБрд╕рд╛рд░, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдЖрдк рдХрд╕реМрдЯреА рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред
рдкреНрд░рд╛рдкреНрдд рдХрд░реНрд╕рд░ рдХрд╛ рдХреЙрд▓ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:

dbconnection = sqlite3ред рдХрдиреЗрдХреНрдЯ ( "some_slqite_base.db)"
dbcursor = dbconnection.cursor (mycursor)
dbcursor.execute (" рдЪрдпрди рдХрд░реЗрдВ * рд╕реЗ sqlite_master ")


рдЬрд╛рдирдХрд╛рд░реА рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддреА рд╣реИ:

рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ ('рдЯрд┐рдкреНрдкрдгреА', 'xmlns', 'name') рдорд╛рди ('рдкреИрдЪ рдирдВрдмрд░ 125124', 'http://oval.mitre.org/XMLSchema/oval-definitions-5#solaris', 'patch_object') рдореЗрдВ рдбрд╛рд▓реЗрдВ IDLE = 1.5530665503253545

adv_


рдЬрд╣рд╛рдВ IDLE рдорд╛рди рдХрдорд╛рдВрдб рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рд╣реИред
рдЖрдкрдХреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдпрд╣ рдЙрдкрдпреЛрдЧреА рднреА рд▓рдЧреЗрдЧрд╛ред

Source: https://habr.com/ru/post/In137677/


All Articles