PostgreSQL数据库中的常见错误

 我们在操作数据库的时候,我们总会遇到很多错误。下面整理了一下常见的错误。

错误1

      FATAL: connection limit exceeded for non-superusers

      原因:非超级用户的连接数(max_connections - superuser_reserved_connections)超过了设定值

      解决办法:增加max_connections设定值,但如果增加了过多的话,数据库负担太大还容易产生内存错误。可以记住pg-pool等工具来辅助解决。

错误2

     FATAL: sorry, too many clients already

     原因:数据库服务器的连接数超过了max_connections设定值。

     解决办法:和错误1解决办法类似。

错误3

    LOG: checkpoints are occurring too frequently

    原因:checkpoint处理正频繁发生。

    解决办法:增加checkpoint_segments的值。

错误4

    LOG: archive command failed with exit code (X)

    原因:archive_command 失败了。

    解决办法:因为有可能是硬盘没空间了,所以可以把数据库的log删除一些。

错误5

    LOG: number of page slots needed (X) exceeds max_fsm_pages (Y)

    原因:max_fsm_pages不足了。

    解决办法:增加max_fsm_pages的同时进行 VACUUM FULL。

错误6

   ERROR: current transaction is aborted, commands ignored until end of transaction blockp
   原因:数据库操作时,前一次操作中已经发生过错误了。

   解决办法: PostgreSQL包級r:ERROR: current transaction is aborted, commands ignored until end of transaction blockp

错误7

   ERROR:  operator does not exist: character = integer

   原因:PostgreSQL8.3以后,取消了默认类型转换。因此需要使比较的类型保持一致。可以看cast函数。

 

 

附错误code

 

Error CodeMeaningCondition Name
Class 00 — Successful Completion
00000 SUCCESSFUL COMPLETIONsuccessful_completion
Class 01 — Warning
01000 WARNINGwarning
0100C DYNAMIC RESULT SETS RETURNEDdynamic_result_sets_returned
01008 IMPLICIT ZERO BIT PADDINGimplicit_zero_bit_padding
01003 NULL VALUE ELIMINATED IN SET FUNCTIONnull_value_eliminated_in_set_function
01007 PRIVILEGE NOT GRANTEDprivilege_not_granted
01006 PRIVILEGE NOT REVOKEDprivilege_not_revoked
01004 STRING DATA RIGHT TRUNCATIONstring_data_right_truncation
01P01 DEPRECATED FEATUREdeprecated_feature
Class 02 — No Data (this is also a warning class per the SQL standard)
02000 NO DATAno_data
02001 NO ADDITIONAL DYNAMIC RESULT SETS RETURNEDno_additional_dynamic_result_sets_returned
Class 03 — SQL Statement Not Yet Complete
03000 SQL STATEMENT NOT YET COMPLETEsql_statement_not_yet_complete
Class 08 — Connection Exception
08000 CONNECTION EXCEPTIONconnection_exception
08003 CONNECTION DOES NOT EXISTconnection_does_not_exist
08006 CONNECTION FAILUREconnection_failure
08001 SQLCLIENT UNABLE TO ESTABLISH SQLCONNECTIONsqlclient_unable_to_establish_sqlconnection
08004 SQLSERVER REJECTED ESTABLISHMENT OF SQLCONNECTIONsqlserver_rejected_establishment_of_sqlconnection
08007 TRANSACTION RESOLUTION UNKNOWNtransaction_resolution_unknown
08P01 PROTOCOL VIOLATIONprotocol_violation
Class 09 — Triggered Action Exception
09000 TRIGGERED ACTION EXCEPTIONtriggered_action_exception
Class 0A — Feature Not Supported
0A000 FEATURE NOT SUPPORTEDfeature_not_supported
Class 0B — Invalid Transaction Initiation
0B000 INVALID TRANSACTION INITIATIONinvalid_transaction_initiation
Class 0F — Locator Exception
0F000 LOCATOR EXCEPTIONlocator_exception
0F001 INVALID LOCATOR SPECIFICATIONinvalid_locator_specification
Class 0L — Invalid Grantor
0L000 INVALID GRANTORinvalid_grantor
0LP01 INVALID GRANT OPERATIONinvalid_grant_operation
Class 0P — Invalid Role Specification
0P000 INVALID ROLE SPECIFICATIONinvalid_role_specification
Class 20 — Case Not Found
20000 CASE NOT FOUNDcase_not_found
Class 21 — Cardinality Violation
21000 CARDINALITY VIOLATIONcardinality_violation
Class 22 — Data Exception
22000 DATA EXCEPTIONdata_exception
2202E ARRAY SUBSCRIPT ERRORarray_subscript_error
22021 CHARACTER NOT IN REPERTOIREcharacter_not_in_repertoire
22008 DATETIME FIELD OVERFLOWdatetime_field_overflow
22012 DIVISION BY ZEROdivision_by_zero
22005 ERROR IN ASSIGNMENTerror_in_assignment
2200B ESCAPE CHARACTER CONFLICTescape_character_conflict
22022 INDICATOR OVERFLOWindicator_overflow
22015 INTERVAL FIELD OVERFLOWinterval_field_overflow
2201E INVALID ARGUMENT FOR LOGARITHMinvalid_argument_for_logarithm
22014 INVALID ARGUMENT FOR NTILE FUNCTIONinvalid_argument_for_ntile_function
22016 INVALID ARGUMENT FOR NTH_VALUE FUNCTIONinvalid_argument_for_nth_value_function
2201F INVALID ARGUMENT FOR POWER FUNCTIONinvalid_argument_for_power_function
2201G INVALID ARGUMENT FOR WIDTH BUCKET FUNCTIONinvalid_argument_for_width_bucket_function
22018 INVALID CHARACTER VALUE FOR CASTinvalid_character_value_for_cast
22007 INVALID DATETIME FORMATinvalid_datetime_format
22019 INVALID ESCAPE CHARACTERinvalid_escape_character
2200D INVALID ESCAPE OCTETinvalid_escape_octet
22025 INVALID ESCAPE SEQUENCEinvalid_escape_sequence
22P06 NONSTANDARD USE OF ESCAPE CHARACTERnonstandard_use_of_escape_character
22010 INVALID INDICATOR PARAMETER VALUEinvalid_indicator_parameter_value
22023 INVALID PARAMETER VALUEinvalid_parameter_value
2201B INVALID REGULAR EXPRESSIONinvalid_regular_expression
2201W INVALID ROW COUNT IN LIMIT CLAUSEinvalid_row_count_in_limit_clause
2201X INVALID ROW COUNT IN RESULT OFFSET CLAUSEinvalid_row_count_in_result_offset_clause
22009 INVALID TIME ZONE DISPLACEMENT VALUEinvalid_time_zone_displacement_value
2200C INVALID USE OF ESCAPE CHARACTERinvalid_use_of_escape_character
2200G MOST SPECIFIC TYPE MISMATCHmost_specific_type_mismatch
22004 NULL VALUE NOT ALLOWEDnull_value_not_allowed
22002 NULL VALUE NO INDICATOR PARAMETERnull_value_no_indicator_parameter
22003 NUMERIC VALUE OUT OF RANGEnumeric_value_out_of_range
22026 STRING DATA LENGTH MISMATCHstring_data_length_mismatch
22001 STRING DATA RIGHT TRUNCATIONstring_data_right_truncation
22011 SUBSTRING ERRORsubstring_error
22027 TRIM ERRORtrim_error
22024 UNTERMINATED C STRINGunterminated_c_string
2200F ZERO LENGTH CHARACTER STRINGzero_length_character_string
22P01 FLOATING POINT EXCEPTIONfloating_point_exception
22P02 INVALID TEXT REPRESENTATIONinvalid_text_representation
22P03 INVALID BINARY REPRESENTATIONinvalid_binary_representation
22P04 BAD COPY FILE FORMATbad_copy_file_format
22P05 UNTRANSLATABLE CHARACTERuntranslatable_character
2200L NOT AN XML DOCUMENTnot_an_xml_document
2200M INVALID XML DOCUMENTinvalid_xml_document
2200N INVALID XML CONTENTinvalid_xml_content
2200S INVALID XML COMMENTinvalid_xml_comment
2200T INVALID XML PROCESSING INSTRUCTIONinvalid_xml_processing_instruction
Class 23 — Integrity Constraint Violation
23000 INTEGRITY CONSTRAINT VIOLATIONintegrity_constraint_violation
23001 RESTRICT VIOLATIONrestrict_violation
23502 NOT NULL VIOLATIONnot_null_violation
23503 FOREIGN KEY VIOLATIONforeign_key_violation
23505 UNIQUE VIOLATIONunique_violation
23514 CHECK VIOLATIONcheck_violation
Class 24 — Invalid Cursor State
24000 INVALID CURSOR STATEinvalid_cursor_state
Class 25 — Invalid Transaction State
25000 INVALID TRANSACTION STATEinvalid_transaction_state
25001 ACTIVE SQL TRANSACTIONactive_sql_transaction
25002 BRANCH TRANSACTION ALREADY ACTIVEbranch_transaction_already_active
25008 HELD CURSOR REQUIRES SAME ISOLATION LEVELheld_cursor_requires_same_isolation_level
25003 INAPPROPRIATE ACCESS MODE FOR BRANCH TRANSACTIONinappropriate_access_mode_for_branch_transaction
25004 INAPPROPRIATE ISOLATION LEVEL FOR BRANCH TRANSACTIONinappropriate_isolation_level_for_branch_transaction
25005 NO ACTIVE SQL TRANSACTION FOR BRANCH TRANSACTIONno_active_sql_transaction_for_branch_transaction
25006 READ ONLY SQL TRANSACTIONread_only_sql_transaction
25007 SCHEMA AND DATA STATEMENT MIXING NOT SUPPORTEDschema_and_data_statement_mixing_not_supported
25P01 NO ACTIVE SQL TRANSACTIONno_active_sql_transaction
25P02 IN FAILED SQL TRANSACTIONin_failed_sql_transaction
Class 26 — Invalid SQL Statement Name
26000 INVALID SQL STATEMENT NAMEinvalid_sql_statement_name
Class 27 — Triggered Data Change Violation
27000 TRIGGERED DATA CHANGE VIOLATIONtriggered_data_change_violation
Class 28 — Invalid Authorization Specification
28000 INVALID AUTHORIZATION SPECIFICATIONinvalid_authorization_specification
Class 2B — Dependent Privilege Descriptors Still Exist
2B000 DEPENDENT PRIVILEGE DESCRIPTORS STILL EXISTdependent_privilege_descriptors_still_exist
2BP01 DEPENDENT OBJECTS STILL EXISTdependent_objects_still_exist
Class 2D — Invalid Transaction Termination
2D000 INVALID TRANSACTION TERMINATIONinvalid_transaction_termination
Class 2F — SQL Routine Exception
2F000 SQL ROUTINE EXCEPTIONsql_routine_exception
2F005 FUNCTION EXECUTED NO RETURN STATEMENTfunction_executed_no_return_statement
2F002 MODIFYING SQL DATA NOT PERMITTEDmodifying_sql_data_not_permitted
2F003 PROHIBITED SQL STATEMENT ATTEMPTEDprohibited_sql_statement_attempted
2F004 READING SQL DATA NOT PERMITTEDreading_sql_data_not_permitted
Class 34 — Invalid Cursor Name
34000 INVALID CURSOR NAMEinvalid_cursor_name
Class 38 — External Routine Exception
38000 EXTERNAL ROUTINE EXCEPTIONexternal_routine_exception
38001 CONTAINING SQL NOT PERMITTEDcontaining_sql_not_permitted
38002 MODIFYING SQL DATA NOT PERMITTEDmodifying_sql_data_not_permitted
38003 PROHIBITED SQL STATEMENT ATTEMPTEDprohibited_sql_statement_attempted
38004 READING SQL DATA NOT PERMITTEDreading_sql_data_not_permitted
Class 39 — External Routine Invocation Exception
39000 EXTERNAL ROUTINE INVOCATION EXCEPTIONexternal_routine_invocation_exception
39001 INVALID SQLSTATE RETURNEDinvalid_sqlstate_returned
39004 NULL VALUE NOT ALLOWEDnull_value_not_allowed
39P01 TRIGGER PROTOCOL VIOLATEDtrigger_protocol_violated
39P02 SRF PROTOCOL VIOLATEDsrf_protocol_violated
Class 3B — Savepoint Exception
3B000 SAVEPOINT EXCEPTIONsavepoint_exception
3B001 INVALID SAVEPOINT SPECIFICATIONinvalid_savepoint_specification
Class 3D — Invalid Catalog Name
3D000 INVALID CATALOG NAMEinvalid_catalog_name
Class 3F — Invalid Schema Name
3F000 INVALID SCHEMA NAMEinvalid_schema_name
Class 40 — Transaction Rollback
40000 TRANSACTION ROLLBACKtransaction_rollback
40002 TRANSACTION INTEGRITY CONSTRAINT VIOLATIONtransaction_integrity_constraint_violation
40001 SERIALIZATION FAILUREserialization_failure
40003 STATEMENT COMPLETION UNKNOWNstatement_completion_unknown
40P01 DEADLOCK DETECTEDdeadlock_detected
Class 42 — Syntax Error or Access Rule Violation
42000 SYNTAX ERROR OR ACCESS RULE VIOLATIONsyntax_error_or_access_rule_violation
42601 SYNTAX ERRORsyntax_error
42501 INSUFFICIENT PRIVILEGEinsufficient_privilege
42846 CANNOT COERCEcannot_coerce
42803 GROUPING ERRORgrouping_error
42P20 WINDOWING ERRORwindowing_error
42P19 INVALID RECURSIONinvalid_recursion
42830 INVALID FOREIGN KEYinvalid_foreign_key
42602 INVALID NAMEinvalid_name
42622 NAME TOO LONGname_too_long
42939 RESERVED NAMEreserved_name
42804 DATATYPE MISMATCHdatatype_mismatch
42P18 INDETERMINATE DATATYPEindeterminate_datatype
42809 WRONG OBJECT TYPEwrong_object_type
42703 UNDEFINED COLUMNundefined_column
42883 UNDEFINED FUNCTIONundefined_function
42P01 UNDEFINED TABLEundefined_table
42P02 UNDEFINED PARAMETERundefined_parameter
42704 UNDEFINED OBJECTundefined_object
42701 DUPLICATE COLUMNduplicate_column
42P03 DUPLICATE CURSORduplicate_cursor
42P04 DUPLICATE DATABASEduplicate_database
42723 DUPLICATE FUNCTIONduplicate_function
42P05 DUPLICATE PREPARED STATEMENTduplicate_prepared_statement
42P06 DUPLICATE SCHEMAduplicate_schema
42P07 DUPLICATE TABLEduplicate_table
42712 DUPLICATE ALIASduplicate_alias
42710 DUPLICATE OBJECTduplicate_object
42702 AMBIGUOUS COLUMNambiguous_column
42725 AMBIGUOUS FUNCTIONambiguous_function
42P08 AMBIGUOUS PARAMETERambiguous_parameter
42P09 AMBIGUOUS ALIASambiguous_alias
42P10 INVALID COLUMN REFERENCEinvalid_column_reference
42611 INVALID COLUMN DEFINITIONinvalid_column_definition
42P11 INVALID CURSOR DEFINITIONinvalid_cursor_definition
42P12 INVALID DATABASE DEFINITIONinvalid_database_definition
42P13 INVALID FUNCTION DEFINITIONinvalid_function_definition
42P14 INVALID PREPARED STATEMENT DEFINITIONinvalid_prepared_statement_definition
42P15 INVALID SCHEMA DEFINITIONinvalid_schema_definition
42P16 INVALID TABLE DEFINITIONinvalid_table_definition
42P17 INVALID OBJECT DEFINITIONinvalid_object_definition
Class 44 — WITH CHECK OPTION Violation
44000 WITH CHECK OPTION VIOLATIONwith_check_option_violation
Class 53 — Insufficient Resources
53000 INSUFFICIENT RESOURCESinsufficient_resources
53100 DISK FULLdisk_full
53200 OUT OF MEMORYout_of_memory
53300 TOO MANY CONNECTIONStoo_many_connections
Class 54 — Program Limit Exceeded
54000 PROGRAM LIMIT EXCEEDEDprogram_limit_exceeded
54001 STATEMENT TOO COMPLEXstatement_too_complex
54011 TOO MANY COLUMNStoo_many_columns
54023 TOO MANY ARGUMENTStoo_many_arguments
Class 55 — Object Not In Prerequisite State
55000 OBJECT NOT IN PREREQUISITE STATEobject_not_in_prerequisite_state
55006 OBJECT IN USEobject_in_use
55P02 CANT CHANGE RUNTIME PARAMcant_change_runtime_param
55P03 LOCK NOT AVAILABLElock_not_available
Class 57 — Operator Intervention
57000 OPERATOR INTERVENTIONoperator_intervention
57014 QUERY CANCELEDquery_canceled
57P01 ADMIN SHUTDOWNadmin_shutdown
57P02 CRASH SHUTDOWNcrash_shutdown
57P03 CANNOT CONNECT NOWcannot_connect_now
Class 58 — System Error (errors external to PostgreSQL itself)
58030 IO ERRORio_error
58P01 UNDEFINED FILEundefined_file
58P02 DUPLICATE FILEduplicate_file
Class F0 — Configuration File Error
F0000 CONFIG FILE ERRORconfig_file_error
F0001 LOCK FILE EXISTSlock_file_exists
Class P0 — PL/pgSQL Error
P0000 PLPGSQL ERRORplpgsql_error
P0001 RAISE EXCEPTIONraise_exception
P0002 NO DATA FOUNDno_data_found
P0003 TOO MANY ROWStoo_many_rows
Class XX — Internal Error
XX000 INTERNAL ERRORinternal_error
XX001 DATA CORRUPTEDdata_corrupted
XX002 INDEX CORRUPTEDindex_corrupted
  • 3
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值