[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:en:database\u002Fmysql-innodb-transactions":4,"config":214},null,{"field_key":5,"field_name":6,"seniority":7,"topic_key":8,"topic_name":9,"spec_key":7,"spec_name":7,"locale":10,"cell_total":11,"field_total":12,"seniorities":13,"topics":17,"specs":115,"samples":129},"database","Database","","mysql-innodb-transactions","Mysql Innodb Transactions","en",75,2475,[14,15,16],"junior","mid","senior",[18,21,24,27,30,33,36,39,42,45,48,49,52,55,58,61,64,67,70,73,76,79,82,85,88,91,94,97,100,103,106,109,112],{"key":19,"name":20,"count":11},"backup-recovery","Backup Recovery",{"key":22,"name":23,"count":11},"data-modeling","Data Modeling",{"key":25,"name":26,"count":11},"indexing","Indexing",{"key":28,"name":29,"count":11},"mongodb-aggregation","Mongodb Aggregation",{"key":31,"name":32,"count":11},"mongodb-indexes-queries","Mongodb Indexes Queries",{"key":34,"name":35,"count":11},"mongodb-operations","Mongodb Operations",{"key":37,"name":38,"count":11},"mongodb-replication-sharding","Mongodb Replication Sharding",{"key":40,"name":41,"count":11},"mongodb-schema-modeling","Mongodb Schema Modeling",{"key":43,"name":44,"count":11},"mongodb-transactions-consistency","Mongodb Transactions Consistency",{"key":46,"name":47,"count":11},"mysql-indexes","Mysql Indexes",{"key":8,"name":9,"count":11},{"key":50,"name":51,"count":11},"mysql-operations","Mysql Operations",{"key":53,"name":54,"count":11},"mysql-query-optimization","Mysql Query Optimization",{"key":56,"name":57,"count":11},"mysql-replication-scaling","Mysql Replication Scaling",{"key":59,"name":60,"count":11},"mysql-types-constraints","Mysql Types Constraints",{"key":62,"name":63,"count":11},"nosql-models","Nosql Models",{"key":65,"name":66,"count":11},"performance-tuning","Performance Tuning",{"key":68,"name":69,"count":11},"pg-indexes","Pg Indexes",{"key":71,"name":72,"count":11},"pg-mvcc-vacuum","Pg Mvcc Vacuum",{"key":74,"name":75,"count":11},"pg-operations","Pg Operations",{"key":77,"name":78,"count":11},"pg-query-planning","Pg Query Planning",{"key":80,"name":81,"count":11},"pg-transactions-locking","Pg Transactions Locking",{"key":83,"name":84,"count":11},"pg-types-constraints","Pg Types Constraints",{"key":86,"name":87,"count":11},"query-optimization","Query Optimization",{"key":89,"name":90,"count":11},"redis-cluster-sharding","Redis Cluster Sharding",{"key":92,"name":93,"count":11},"redis-data-structures","Redis Data Structures",{"key":95,"name":96,"count":11},"redis-expiration-eviction","Redis Expiration Eviction",{"key":98,"name":99,"count":11},"redis-persistence","Redis Persistence",{"key":101,"name":102,"count":11},"redis-replication-sentinel","Redis Replication Sentinel",{"key":104,"name":105,"count":11},"redis-transactions-scripting","Redis Transactions Scripting",{"key":107,"name":108,"count":11},"replication-scaling","Replication Scaling",{"key":110,"name":111,"count":11},"security-access","Security Access",{"key":113,"name":114,"count":11},"transactions-isolation","Transactions Isolation",[116,120,123,126],{"key":117,"name":118,"count":119},"mongodb","MongoDB",450,{"key":121,"name":122,"count":119},"mysql","MySQL",{"key":124,"name":125,"count":119},"postgresql","PostgreSQL",{"key":127,"name":128,"count":119},"redis","Redis",[130,148,162,175,188,201],{"id":131,"topic":9,"difficulty":132,"body":133,"options":134,"correct_key":142,"explanation":147},"019f8780-5ed9-7591-bc51-5e624b5d0e15",1,"What is the default transaction isolation level of the InnoDB storage engine in MySQL?",[135,138,141,144],{"key":136,"text":137},"a","READ UNCOMMITTED",{"key":139,"text":140},"b","READ COMMITTED",{"key":142,"text":143},"c","REPEATABLE READ",{"key":145,"text":146},"d","SERIALIZABLE","InnoDB's default isolation level is REPEATABLE READ. This differs from PostgreSQL's READ COMMITTED default. Under InnoDB REPEATABLE READ, repeated consistent non-locking reads use the snapshot established by the first such read (or by START TRANSACTION WITH CONSISTENT SNAPSHOT).",{"id":149,"topic":9,"difficulty":150,"body":151,"options":152,"correct_key":136,"explanation":161},"019f8780-5eda-74b7-b6e0-41738a820231",2,"A developer switches from PostgreSQL to MySQL and assumes both databases have the same default isolation behavior. What is the concrete difference they need to be aware of?",[153,155,157,159],{"key":136,"text":154},"MySQL\u002FInnoDB defaults to REPEATABLE READ, while PostgreSQL defaults to READ COMMITTED",{"key":139,"text":156},"MySQL\u002FInnoDB defaults to READ UNCOMMITTED, while PostgreSQL defaults to REPEATABLE READ",{"key":142,"text":158},"Both default to READ COMMITTED, but MySQL enforces it more strictly",{"key":145,"text":160},"Both default to SERIALIZABLE, but MySQL allows disabling it per-session","InnoDB's default isolation level is REPEATABLE READ, whereas PostgreSQL's default is READ COMMITTED. This means a repeated SELECT inside the same MySQL transaction sees the same snapshot even if other transactions commit changes meanwhile, unlike PostgreSQL's default where each statement sees the latest committed data.",{"id":163,"topic":9,"difficulty":132,"body":164,"options":165,"correct_key":139,"explanation":174},"019f8780-5edb-75b0-8d6b-0bcf7dfc10fc","Which statement correctly starts an explicit transaction in MySQL?",[166,168,170,172],{"key":136,"text":167},"BEGIN TRANSACTION WORK;",{"key":139,"text":169},"START TRANSACTION;",{"key":142,"text":171},"OPEN TRANSACTION;",{"key":145,"text":173},"TRANSACTION START;","`START TRANSACTION;` (or the shorter `BEGIN;`) is the standard way to start an explicit transaction in MySQL. It temporarily disables autocommit for that transaction until COMMIT or ROLLBACK.",{"id":176,"topic":9,"difficulty":150,"body":177,"options":178,"correct_key":145,"explanation":187},"019f8780-5ee0-754d-a74f-3ace9fb8356a","By default, what is the value of the `autocommit` system variable in a new MySQL session, and what does it mean?",[179,181,183,185],{"key":136,"text":180},"OFF — every statement must be explicitly wrapped in START TRANSACTION\u002FCOMMIT",{"key":139,"text":182},"OFF — statements are buffered until an explicit FLUSH is issued",{"key":142,"text":184},"ON, but only applies to SELECT statements, not DML",{"key":145,"text":186},"ON — each individual SQL statement is committed as its own transaction unless START TRANSACTION is used","MySQL sessions default to `autocommit = ON`. This means each standalone statement (e.g. a single UPDATE) is automatically committed immediately after it runs, unless the session explicitly starts a multi-statement transaction with START TRANSACTION.",{"id":189,"topic":9,"difficulty":150,"body":190,"options":191,"correct_key":139,"explanation":200},"019f8780-5ee0-7dc6-ba1d-32d7de839c68","What SQL statement should be used to undo all changes made within the current open transaction in InnoDB?",[192,194,196,198],{"key":136,"text":193},"UNDO;",{"key":139,"text":195},"ROLLBACK;",{"key":142,"text":197},"RESET TRANSACTION;",{"key":145,"text":199},"REVERT;","`ROLLBACK;` undoes all changes made since the transaction began, using InnoDB's undo log to restore the previous row versions. `COMMIT;` is its counterpart, which makes the changes permanent.",{"id":202,"topic":9,"difficulty":150,"body":203,"options":204,"correct_key":136,"explanation":213},"019f8780-5ee1-74a6-b268-f9d89cdd6a52","Which SQL clause acquires an exclusive row lock on the rows a SELECT reads, so other transactions cannot update or delete them until the current transaction ends?",[205,207,209,211],{"key":136,"text":206},"SELECT ... FOR UPDATE",{"key":139,"text":208},"SELECT ... WITH LOCK",{"key":142,"text":210},"SELECT ... EXCLUSIVE",{"key":145,"text":212},"SELECT ... FOR EXCLUSIVE READ","`SELECT ... FOR UPDATE` reads rows and takes an exclusive lock on them, blocking other transactions from updating, deleting, or (depending on isolation level) locking the same rows until the current transaction commits or rolls back.",{"fields":215,"seniorities":391,"interview_shapes":392,"locales":397,"oauth":399,"question_count":402,"coach_enabled":403,"jd_match_enabled":403},[216,241,261,278,302,315,324,343,365,372,378,385],{"key":217,"name_tr":218,"name_en":218,"sort":132,"specializations":219},"backend","Backend",[220,223,226,229,232,235,238],{"key":221,"name":222,"field":217},"general","Genel",{"key":224,"name":225,"field":217},"go","Go",{"key":227,"name":228,"field":217},"python","Python",{"key":230,"name":231,"field":217},"java","Java",{"key":233,"name":234,"field":217},"csharp","C#\u002F.NET",{"key":236,"name":237,"field":217},"nodejs","Node.js",{"key":239,"name":240,"field":217},"php","PHP",{"key":242,"name_tr":243,"name_en":243,"sort":150,"specializations":244},"frontend","Frontend",[245,246,249,252,255,258],{"key":221,"name":222,"field":242},{"key":247,"name":248,"field":242},"javascript","JavaScript",{"key":250,"name":251,"field":242},"typescript","TypeScript",{"key":253,"name":254,"field":242},"react","React",{"key":256,"name":257,"field":242},"vue","Vue",{"key":259,"name":260,"field":242},"angular","Angular",{"key":262,"name_tr":263,"name_en":263,"sort":264,"specializations":265},"fullstack","Fullstack",3,[266,267,268,269,270,271,272,273,274,275,276,277],{"key":221,"name":222,"field":262},{"key":224,"name":225,"field":217},{"key":227,"name":228,"field":217},{"key":230,"name":231,"field":217},{"key":233,"name":234,"field":217},{"key":236,"name":237,"field":217},{"key":239,"name":240,"field":217},{"key":247,"name":248,"field":242},{"key":250,"name":251,"field":242},{"key":253,"name":254,"field":242},{"key":256,"name":257,"field":242},{"key":259,"name":260,"field":242},{"key":279,"name_tr":280,"name_en":280,"sort":281,"specializations":282},"devops-cloud","DevOps \u002F Cloud",4,[283,284,287,290,293,296,299],{"key":221,"name":222,"field":279},{"key":285,"name":286,"field":279},"aws","AWS",{"key":288,"name":289,"field":279},"gcp","GCP",{"key":291,"name":292,"field":279},"azure","Azure",{"key":294,"name":295,"field":279},"kubernetes","Kubernetes",{"key":297,"name":298,"field":279},"terraform","Terraform",{"key":300,"name":301,"field":279},"linux","Linux",{"key":303,"name_tr":304,"name_en":304,"sort":305,"specializations":306},"ai-engineer","AI Engineer",5,[307,308,309,312],{"key":221,"name":222,"field":303},{"key":227,"name":228,"field":303},{"key":310,"name":311,"field":303},"llm-rag","LLM\u002FRAG",{"key":313,"name":314,"field":303},"mlops","MLOps",{"key":5,"name_tr":316,"name_en":6,"sort":317,"specializations":318},"Veritabanı",6,[319,320,321,322,323],{"key":221,"name":222,"field":5},{"key":124,"name":125,"field":5},{"key":121,"name":122,"field":5},{"key":117,"name":118,"field":5},{"key":127,"name":128,"field":5},{"key":325,"name_tr":326,"name_en":327,"sort":328,"specializations":329},"mobile","Mobil","Mobile",7,[330,331,334,337,340],{"key":221,"name":222,"field":325},{"key":332,"name":333,"field":325},"ios-swift","iOS (Swift)",{"key":335,"name":336,"field":325},"android-kotlin","Android (Kotlin)",{"key":338,"name":339,"field":325},"flutter","Flutter",{"key":341,"name":342,"field":325},"react-native","React Native",{"key":344,"name_tr":345,"name_en":346,"sort":347,"specializations":348},"security","Güvenlik","Security",8,[349,350,353,356,359,362],{"key":221,"name":222,"field":344},{"key":351,"name":352,"field":344},"appsec","AppSec",{"key":354,"name":355,"field":344},"offensive-pentest","Offensive \u002F Pentest",{"key":357,"name":358,"field":344},"cloud-security","Cloud Security",{"key":360,"name":361,"field":344},"devsecops","DevSecOps",{"key":363,"name":364,"field":344},"blue-team-incident","Blue Team \u002F Incident",{"key":366,"name_tr":367,"name_en":368,"sort":369,"specializations":370},"qa-test-automation","QA \u002F Test Otomasyonu","QA \u002F Test Automation",9,[371],{"key":221,"name":222,"field":366},{"key":373,"name_tr":374,"name_en":374,"sort":375,"specializations":376},"data-engineer","Data Engineer",10,[377],{"key":221,"name":222,"field":373},{"key":379,"name_tr":380,"name_en":381,"sort":382,"specializations":383},"game-dev","Oyun Geliştirme","Game Development",11,[384],{"key":221,"name":222,"field":379},{"key":386,"name_tr":387,"name_en":387,"sort":388,"specializations":389},"ml-engineer","ML Engineer",12,[390],{"key":221,"name":222,"field":386},[14,15,16],{"junior":393,"mid":395,"senior":396},{"questions":394,"median_sec":3},20,{"questions":394,"median_sec":3},{"questions":394,"median_sec":3},[398,10],"tr",[400,401],"google","github",21750,true]