ผู้ดูแลฐานข้อมูล

ถามตอบสำหรับผู้เชี่ยวชาญด้านฐานข้อมูลที่ต้องการพัฒนาทักษะฐานข้อมูลและเรียนรู้จากผู้อื่นในชุมชน

4
จะรับชื่อฐานข้อมูลปัจจุบันจากภายใน PostgreSQL ได้อย่างไร
ใช้\c <database_name>ใน PostgreSQL จะเชื่อมต่อกับฐานข้อมูลที่มีชื่อ ชื่อของฐานข้อมูลปัจจุบันจะถูกกำหนดได้อย่างไร? เข้าสู่: my_db> current_database(); ผลิต: ERROR: syntax error at or near "current_database" LINE 1: current_database();
81 postgresql  psql 

4
วิธีใช้ sqlplus เพื่อเชื่อมต่อกับฐานข้อมูล Oracle ที่อยู่บนโฮสต์อื่นโดยไม่ต้องแก้ไข tnsnames.ora ของฉันเอง
ฉันต้องการเชื่อมต่อกับฐานข้อมูล oracle ที่อยู่บนโฮสต์อื่นโดยใช้ sqlplus หน้านี้แนะนำให้เพิ่มรายการในชื่อ tns ของฉันเพื่อเชื่อมกับฐานข้อมูลนั้น local_SID = (DESCRIPTION = (ADDRESS = (PROTOCOL= TCP)(Host= hostname.network)(Port= 1521)) (CONNECT_DATA = (SID = remote_SID)) ) แล้วใช้มันใน sqlplus sqlplus user/pass@local_SID อย่างไรก็ตามในสถานการณ์ของฉันการปรับเปลี่ยนชื่อ tns ท้องถิ่นไม่สามารถทำได้ มันเป็นไปได้ที่จะเชื่อมต่อกับฐานข้อมูลระยะไกลเพียงแค่ใช้อาร์กิวเมนต์ sqlplus โดยไม่ต้องเปลี่ยน tnsnames? สิ่งที่ต้องการ sqlplus user/pass@remote_SID@hostname.network ;( I know, this one is not valid)
80 oracle  sqlplus 

4
ฐานข้อมูลเซิร์ฟเวอร์ SQL ค้างอยู่ในสถานะคืนค่า
ฉันมีเซิร์ฟเวอร์ Sharepoint เรามีปัญหากับเครื่องมือสำรองของเราและตอนนี้ฐานข้อมูลของฉันบางส่วนติดอยู่ในสถานะการกู้คืน! เป็นไปได้หรือไม่ที่จะหยุดกระบวนการกู้คืน และฉันจะมั่นใจได้อย่างไรว่าความสมบูรณ์ของฐานข้อมูลไม่ได้ถูกบุกรุก?

7
ความแตกต่างระหว่างฐานข้อมูลกับผู้ใช้กับสคีมา
ฉันสับสนกับฐานข้อมูลข้อกำหนดผู้ใช้และสคีมา ใครสามารถอธิบายได้ว่าพวกเขาแตกต่างจากกันอย่างไร (ถ้าเป็น) หากพวกเขาเหมือนกันแล้วความคล้ายคลึงกันระหว่างพวกเขาคืออะไร เราจะใช้มันอย่างไร และเราจะสร้างพวกเขาได้อย่างไร
78 oracle  schema  users 

6
วิธีที่ปลอดภัยที่สุดในการใช้ mysqldump บนระบบจริงที่มีการอ่านและเขียนที่ใช้งานอยู่?
ฉันไม่แน่ใจว่าสิ่งนี้จริงหรือไม่ แต่ฉันจำได้ว่าอ่านถ้าคุณเรียกใช้คำสั่งต่อไปนี้ใน linux mysqldump -u username -p database_name > backup_db.sql ขณะที่กำลังอ่านและเขียนข้อมูลกับฐานข้อมูลดังนั้นดัมพ์อาจมีข้อผิดพลาด มีตัวเลือกเฉพาะในคำสั่งmysqldumpเพื่อให้แน่ใจว่าทำได้อย่างปลอดภัยบนระบบจริงหรือไม่? ฉันโอเคที่มีการอ่าน / เขียนถูกปิดการใช้งานสำหรับผู้ใช้ของเราสองสามวินาที (ฐานข้อมูล <50MB)

5
มีการอัปเกรดแบบแทนที่ SQL Server แบบไม่ดีเหมือนที่เคยเป็นมาหรือไม่?
ฉันได้ทำงานกับเซิร์ฟเวอร์ SQL ในการเปิดและปิดตั้งแต่ SQL Server 6.5 คำแนะนำเก่าที่ยังคงดังในหัวของฉันก็ไม่เคยที่จะทำการอัพเกรดในสถานที่ ฉันกำลังอัปเกรดระบบ 2008 R2 DEV และ TEST เป็น SQL Server 2012 และต้องใช้ฮาร์ดแวร์เดียวกัน ความคิดที่ไม่จำเป็นต้องกู้คืนการกำหนดค่าบริการรายงานของฉันนั้นน่าสนใจมากและฉันก็ขัดกับเวลาที่ชาญฉลาดจริงๆ ไม่มีบริการวิเคราะห์ที่เกี่ยวข้องหรือสิ่งใดที่ผิดปกติหรือไม่เป็นมาตรฐาน - ติดตั้งเฉพาะเอ็นจิ้นฐานข้อมูลและบริการรายงานเท่านั้น มีใครประสบปัญหาร้ายแรงกับการอัปเกรดแบบแทนที่หรือไม่ หรือฉันควรประเมินตำแหน่งของฉันเกี่ยวกับการอัปเกรดแบบแทนที่?

7
วิธีการจัดรูปแบบเอาต์พุตเชลล์ sqlite อย่างถูกต้อง?
ถ้าฉันไปที่mysql shellและพิมพ์SELECT * FROM usersฉันจะได้รับ - +--------+----------------+---------------------------------+----------+-----------+--------------------+--------------------+ | USERID | NAME | EMAILID | PASSWORD | USER_TYPE | CONTACT_ID_FKUSERS | COMPANY_ID_FKUSERS | +--------+----------------+---------------------------------+----------+-----------+--------------------+--------------------+ | 137 | X | b@cc.com | # | ADMIN | 166 | 110 | | 138 | Kshitiz | ksharma@aaa.com | asdf | ADMIN | 167 …
78 sqlite 

4
ความแตกต่างระหว่างการแยกและการจำลองแบบบน MongoDB
ฉันแค่สับสนเกี่ยวกับการแยกส่วนและการจำลองแบบว่ามันทำงานอย่างไรตามคำจำกัดความ การจำลองแบบ: ชุดแบบจำลองใน MongoDB เป็นกลุ่มของกระบวนการ mongod ที่รักษาชุดข้อมูลเดียวกัน Sharding: Sharding เป็นวิธีการจัดเก็บข้อมูลในหลาย ๆ เครื่อง ตามความเข้าใจของฉันหากมีข้อมูล 75 GB แล้วโดยการจำลองแบบ (3 เซิร์ฟเวอร์) จะเก็บข้อมูล 75GB ในแต่ละเซิร์ฟเวอร์หมายถึง 75GB บนเซิร์ฟเวอร์ -1, 75GB บนเซิร์ฟเวอร์ -2 และ 75GB บนเซิร์ฟเวอร์ -3 .. (ถูกต้องฉัน ถ้าฉันผิด) .. และโดยการแบ่งจะถูกเก็บไว้เป็นข้อมูล 25GB บนเซิร์ฟเวอร์ -1 ข้อมูล 25Gb บนเซิร์ฟเวอร์ -2 และ 25GB ข้อมูลบนเซิร์ฟเวอร์ -3 (ขวา?) ... แต่แล้วฉันก็พบบรรทัดนี้ใน …
77 mongodb 

1
เลื่อนระดับอัปเดต… จำกัด 1
ฉันมีฐานข้อมูล Postgres ซึ่งมีรายละเอียดเกี่ยวกับกลุ่มของเซิร์ฟเวอร์เช่นสถานะเซิร์ฟเวอร์ ('ใช้งาน', 'สแตนด์บาย' ฯลฯ ) เซิร์ฟเวอร์ที่ใช้งานอยู่ตลอดเวลาอาจจำเป็นต้องล้มเหลวในการสแตนด์บายและฉันไม่สนใจว่าจะใช้สแตนด์บายใดเป็นพิเศษ ฉันต้องการคิวรีฐานข้อมูลเพื่อเปลี่ยนสถานะของสแตนด์บาย - เพียงแค่หนึ่ง - และส่งคืน IP ของเซิร์ฟเวอร์ที่จะใช้ การเลือกสามารถโดยพลการ: เนื่องจากสถานะของเซิร์ฟเวอร์เปลี่ยนแปลงด้วยแบบสอบถามจึงไม่สำคัญว่าจะเลือกสแตนด์บายใด เป็นไปได้หรือไม่ที่จะ จำกัด คิวรีของฉันให้อัปเดตเดียว นี่คือสิ่งที่ฉันมี: UPDATE server_info SET status = 'active' WHERE status = 'standby' [[LIMIT 1???]] RETURNING server_ip; Postgres ไม่ชอบสิ่งนี้ ฉันจะทำอะไรที่แตกต่างกัน

4
ทำไมคำถามของฉันจึงช้ากว่าเมื่อวานเมื่อวาน?
[Memorial ~] (เลือกหนึ่งอัน) [ ] Well trained professional, [ ] Casual reader, [ ] Hapless wanderer, ฉันมี(เลือกทุกข้อที่ใช่) [ ] query [ ] stored procedure [ ] database thing maybe ที่ทำงานได้ดี(ถ้ามี) [ ] yesterday [ ] in recent memory [ ] at some point แต่ตอนนี้ช้าลงทันที ฉันได้ตรวจสอบแล้วเพื่อให้แน่ใจว่าไม่ได้ถูกบล็อกและไม่ใช่เหยื่อของงานการบำรุงรักษารายงานหรือกระบวนการนอกแบนด์ที่ยาวนาน ปัญหาคือสิ่งที่ฉันควรทำอย่างไรและฉันสามารถให้ข้อมูลใดได้บ้างเพื่อรับความช่วยเหลือ [*Insert appropriate closing remarks*]

5
ฐานข้อมูลใดที่สามารถจัดการกับการจัดเก็บระเบียนจำนวนพันล้านล้านล้านระเบียน
เรากำลังมองหาการพัฒนาเครื่องมือในการจับและวิเคราะห์ข้อมูล netflow ซึ่งเราได้รวบรวมจำนวนมหาศาล ในแต่ละวันเราบันทึกเร็กคอร์ดกระแสประมาณ 1.4 พันล้านรายการซึ่งจะมีลักษณะเช่นนี้ในรูปแบบ json: { "tcp_flags": "0", "src_as": "54321", "nexthop": "1.2.3.4", "unix_secs": "1352234521", "src_mask": "23", "tos": "0", "prot": "6", "input": "105", "doctets": "186", "engine_type": "0", "exaddr": "2.3.4.5", "engine_id": "2", "srcaddr": "9.8.7.6", "dst_as": "12345", "unix_nsecs": "752265174", "sysuptime": "2943529544", "dst_mask": "24", "dstport": "80", "last": "2943523241", "srcport": "52672", "dpkts": "4", …

4
แหล่งข้อมูลที่เชื่อถือได้ที่ <> และ! = เหมือนกันในประสิทธิภาพใน SQL Server
ลองพิจารณาคำตอบนี้เพื่อให้ความมั่นใจแก่ผู้ถามเกี่ยวกับ&lt;&gt;โอเปอเรเตอร์ที่: &lt;&gt;คือ ... !=เช่นเดียวกับ แต่จากนั้นผู้แสดงความคิดเห็นท่อขึ้นและพูดว่า: มันเป็นความจริงที่ว่าพวกมันใช้งานได้เหมือนกัน อย่างไรก็ตามเครื่องมือเพิ่มประสิทธิภาพการใช้ SQL นั้นแตกต่างกันมาก = /! = จะถูกประเมินว่าเป็นความจริง / เท็จในขณะที่ &lt;&gt; หมายถึงเครื่องยนต์ต้องมองและดูว่าค่ามากกว่าหรือน้อยกว่าหมายถึงค่าใช้จ่ายในการทำงานที่มากขึ้น สิ่งที่ควรพิจารณาเมื่อเขียนข้อความค้นหาที่อาจมีราคาแพง ฉันมั่นใจว่านี่เป็นเท็จ แต่เพื่อที่จะจัดการกับความคลางแคลงที่อาจเกิดขึ้นฉันสงสัยว่าทุกคนสามารถให้แหล่งข้อมูลที่เชื่อถือได้หรือเป็นที่ยอมรับเพื่อพิสูจน์ว่าผู้ประกอบการเหล่านี้ไม่เพียง แต่ใช้งานได้เหมือนกัน

3
ฉันจะระบุตำแหน่งสำหรับคอลัมน์ใหม่ใน PostgreSQL ได้อย่างไร
ถ้าฉันมีตารางที่มีคอลัมน์: id | name | created_date และต้องการเพิ่มคอลัมน์ฉันใช้: alter table my_table add column email varchar(255) จากนั้นคอลัมน์จะถูกเพิ่มหลังcreated_dateคอลัมน์ มีวิธีใดบ้างที่ฉันสามารถระบุตำแหน่งสำหรับคอลัมน์ใหม่ได้ เช่นเพื่อให้ฉันสามารถเพิ่มหลังจากnameได้รับตารางเช่น: id | name | email | created_date

6
เหตุใด SET ARITHABORT ON จึงเร่งการสืบค้นอย่างรวดเร็ว
แบบสอบถามเป็นตัวเลือกเดียวที่มีระดับการจัดกลุ่มจำนวนมากและการดำเนินการ aggragate เมื่อ SET ARITHABORT ON ใช้เวลาน้อยกว่าหนึ่งวินาทีมิฉะนั้นจะใช้เวลาหลายนาที เราได้เห็นพฤติกรรมนี้ใน SQL Server 2000 และ 2008
74 sql-server 

10
อะไรคือข้อโต้แย้งต่อต้านหรือสำหรับการใส่ตรรกะของแอปพลิเคชันลงในเลเยอร์ฐานข้อมูล?
หมายเหตุผู้ชมของ programmers.se และ dba.se นั้นแตกต่างกันและจะมีมุมมองที่แตกต่างกันดังนั้นในกรณีนี้ฉันคิดว่ามันถูกต้องที่จะทำซ้ำสิ่งที่ขัดแย้งกับหรือสำหรับการวางตรรกะของโปรแกรมในชั้นฐานข้อมูลคืออะไร? บน programmers.se ฉันไม่พบการสนทนาเกี่ยวกับ dba ในเรื่องนี้แล้วและโพสต์ต้นฉบับบอกว่ามันทั้งหมดดังนั้น: นักพัฒนาซอฟต์แวร์ส่วนใหญ่ต้องการเก็บตรรกะแอปพลิเคชันในชั้นแอปพลิเคชันและมันอาจรู้สึกเป็นธรรมชาติสำหรับเราที่จะเก็บไว้ที่นี่ ผู้พัฒนาฐานข้อมูลดูเหมือนจะต้องการใส่ตรรกะของแอปพลิเคชันลงในเลเยอร์ฐานข้อมูลเนื่องจากเป็นทริกเกอร์และขั้นตอนการจัดเก็บ โดยส่วนตัวแล้วฉันต้องการเก็บไว้ให้มากที่สุดในเลเยอร์แอปพลิเคชันเพื่อให้ง่ายต่อการตรวจแก้จุดบกพร่องและแยกความรับผิดชอบของเลเยอร์ออกจากกัน คุณคิดอย่างไรเกี่ยวกับสิ่งนี้และสิ่งที่ควรหรือไม่ควรนำไปใช้ในเลเยอร์ฐานข้อมูล NB ฉันไม่ใช่ OP สำหรับคำถามนั้น แต่ทิ้งถ้อยคำดั้งเดิมไว้เหมือนเดิม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.