導航:首頁 > IDC知識 > 修改伺服器字元集

修改伺服器字元集

發布時間:2021-03-16 19:12:41

1、如何修改windows下phpmyadmin中的伺服器字元集從UTF8為GBK

一、phpmyadmin設置新建資料庫的默認編碼為gbk或utf8編碼的方法

1.先運行show variables like 'character%';查看本mysql的各項charset設置

其中:
character_set_database代表當前所在資料庫的編碼,這里是gbk
character_set_server代表默認的新建資料庫編碼,這里是latin1

也就是說,我的當前所在資料庫編碼是gbk,而如果我新建一個資料庫,默認編碼是latin1

2.根據character_set_database和character_set_server的值,我們就好辦了。運行以下兩條sql語句,即可設置完畢:

set character_set_server=gbk; //設置默認新建資料庫編碼為gbk

alter database testdb character set utf8; //更改現有資料庫編碼

注意:set character_set_server=gbk只對當前連接或者查詢有效。如果想新建資料庫,請將create database語句寫在同一查詢中,否則無效

若想永久生效,將character_set_server = gbk寫入mysql的配置文件/etc/my.cnf即可

二、phpmyadmin導入資料庫時gbk或utf8編碼的設置(解決導入資料庫中文亂碼問題)

1.首先確保導入的sql文件中的中文不是亂碼,此sql文件可以是utf8編碼也可以是gb2312編碼,都沒關系

2.在sql文件的最開頭添加set names utf8或者gb2312;(必須與你文件的編碼相同,如果你想導入後是utf8,你的文件編碼就要是utf8,如果你想導入後是gbk/gb2312,你的文件編碼就要是gbk/gb2312)。

3.通過phpmyadmin導入界面直接導入即可

4.文件的字元集,mysql字元集,mysql連接校對等幾處字元集設置可以不用管。比如我這里mysql字元集,mysql連接校對分別是latin1和utf8_general_ci,不影響我的導入後的字元集和編碼

2、linux伺服器的字元集怎麼修改

?

3、如何查看和修改Oracle資料庫伺服器端的字元集

Oracle資料庫查看和修改伺服器端的字元集的方法是本文主要要介紹的內容,接下來救讓我們一起來了解一下這部分內容。

A、oracle server 端字元集查詢

select userenv('language') from al

其中NLS_CHARACTERSET 為server端字元集

NLS_LANGUAGE 為 server端字元顯示形式

B、查詢oracle client端的字元集

$echo $NLS_LANG

如果發現你select 出來的數據是亂碼,請把client端的字元集配置成與linux操作系統相同的字元集。如果還是有亂碼,則有可能是資料庫中的數據存在問題,或者是oracle服務端的配置存在問題。

C、server端字元集修改

將資料庫啟動到RESTRICTED模式下做字元集更改:

SQL> conn /as sysdba Connected.

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup mount ORACLE instance started.

Total System Global Area 236000356 bytes

Fixed Size 451684 bytes

Variable Size 201326592 bytes

Database Buffers 33554432 bytes

Redo Buffers 667648 bytes

Database mounted.

SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;

System altered.

SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;

System altered.

SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;

System altered.

SQL> alter database open;

Database altered.

SQL> ALTER DATABASE CHARACTER SET ZHS16GBK;

ALTER DATABASE CHARACTER SET ZHS16GBK ERROR at line 1:

ORA-12712: new character set must be a superset of old character set

提示我們的字元集:新字元集必須為舊字元集的超集,這時我們可以跳過超集的檢查做更改:

SQL> ALTER DATABASE character set INTERNAL_USE ZHS16GBK;

Database altered.

SQL> select * from v$nls_parameters;



19 rows selected.

重啟檢查是否更改完成:

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup ORACLE instance started.

Total System Global Area 236000356 bytes

Fixed Size 451684 bytes

Variable Size 201326592 bytes

Database Buffers 33554432 bytes

Redo Buffers 667648 bytes

Database mounted.

Database opened.

SQL> select * from v$nls_parameters;



19 rows selected.

我們看到這個過程和之前ALTER DATABASE CHARACTER SET操作的內部過程是完全相同的,也就是說INTERNAL_USE提供的幫助就是使Oracle資料庫繞過了子集與超集的校驗。

這一方法在某些方面是有用處的,比如測試;應用於產品環境大家應該格外小心,除了你以外,沒有人會為此帶來的後果負責。

結語(我們不妨再說一次):

對於DBA來說,有一個很重要的原則就是:不要把你的資料庫置於危險的境地!

這就要求我們,在進行任何可能對資料庫結構發生改變的操作之前,先做有效的備份,很多DBA沒有備份的操作中得到了慘痛的教訓。

D、client端字元集修改

在 /home/oracle與 /root用戶目錄下的。bash_profile中

添加或修改 export NLS_LANG="AMERICAN_AMERICA.UTF8" 語句

關閉當前ssh窗口。

注意:NLS_LANG變數一定要配置正確否則會引起sqlplus 失效。

關於Oracle資料庫查看和修改伺服器端的字元集的方法就介紹到這里了,希望能夠對您有所收獲!
轉載僅供參考,版權屬於原作者。祝你愉快,滿意請採納哦

4、怎麼改字元集

[A]資料庫伺服器字元集select*fromnls_database_parameters,其來源於props$,是表示資料庫的字元集。
客戶端字元集環境select*fromnls_instance_parameters,其來源於v$parameter,
表示客戶端的字元集的設置,可能是參數文件,環境變數或者是注冊表
會話字元集環境select*fromnls_session_parameters,其來源於v$nls_parameters,表示會話自己的設置,可能是會話的環境變數或者是altersession完成,如果會話沒有特殊的設置,將與nls_instance_parameters一致。
客戶端的字元集要求與伺服器一致,才能正確顯示資料庫的非Ascii字元。如果多個設置存在的時候,altersession環境變數注冊表參數文件
字元集要求一致,但是語言設置卻可以不同,語言設置建議用英文。如字元集是zhs16gbk,則nls_lang可以是American_America.zhs16gbk。
[A]8i以上版本可以通過alterdatabase來修改字元集,但也只限於子集到超集,不建議修改props$表,將可能導致嚴重錯誤。
Startupnomount;
Alterdatabasemountexclusive;
;
Altersystemsetjob_queue_process=0;

5、plsql怎麼修改伺服器字元集

1、查詢Oracle server端的字元集。打開PLSQL的查詢窗口中輸入下面SQL查詢語句。
select userenv('language') from al;
得到的伺服器字元集為:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
2、我的電腦中環境變數界面,在系統變數中新加:
變數名:NLS_LANG
變數值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
變數值跟伺服器查詢到的值一致即可。

6、oracle10G伺服器如何修改字元集

沒有就自己創建一個二進制字元集NLS_LANG(HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMExx\NLS_LANG),內容為NLS_LANG=[你想要的字元集],比如美國的:nls_language=american
或者你可以在PL/SQL下修改:ALTER DATABASE SET NLS_LANG=AMERICAN

7、伺服器代碼怎麼改成utf-8

首先上傳的時候有沒有檢查文件里有沒有帶中文(文件名也不能是中文),如果有那就立馬在伺服器空間刪掉,在外面吧文件重命名,刪除不需要的中文字體或重命名中文字體,重新上傳,你可以找運營商給你修改成UTF—8,

8、如何查看和修改Oracle資料庫伺服器端的字元集?

A、oracle server 端字元集查詢

select userenv('language') from al

其中NLS_CHARACTERSET 為server端字元集

NLS_LANGUAGE 為 server端字元顯示形式

B、查詢oracle client端的字元集

$echo $NLS_LANG

如果發現你select 出來的數據是亂碼,請把client端的字元集配置成與linux操作系統相同的字元集。如果還是有亂碼,則有可能是資料庫中的數據存在問題,或者是oracle服務端的配置存在問題。

C、server端字元集修改

將資料庫啟動到RESTRICTED模式下做字元集更改:

SQL> conn /as sysdba  Connected.

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

如果發現你select 出來的數據是亂碼,請把client端的字元集配置成與linux操作系統相同的字元集。如果還是有亂碼,則有可能是資料庫中的數據存在問題,或者是oracle服務端的配置存在問題。

. 1.oracle server端字元集查詢復制代碼代碼如下:select userenv('language') from al;server字元集修改:將資料庫啟動到RESTRICTED模式下做字元集更改:&……

oracle10g伺服器端是安裝在AIX 6.0系統上,客戶端是安裝在windows server 2008 系統上,客戶端與伺服器已成功連接,但是資料庫表裡的中文字無法顯示,顯示為「?」,用SQLPLUS查得伺服器端的字元集為AL16uTF16,如何修改該字元集使之支持中文呢?另外oracle10G客戶端的字元集需不需要設置,如何查看和設置呢?

9、怎麼修改伺服器mysql的字元集

my.ini或者my.cnf內可以設置默認字元集例如:default-character-set=utf8

建表或改表時,語句:
CREATE TABLE `user` (
`id` bigint(20) NOT NULL,
`name` varchar(255) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

客戶端登錄查詢時,命令參數:mysql -uroot --default-character-set=utf8 -p

10、如何修改Syabse伺服器端的默認字元集

以Windows操作系統Sybase15為例: 首先說明察看服務端字元集和客戶端字元集的方法:查回看伺服器端答字元集: 在isql環境中執行: 1>; sp_helpsort 2>; go 查看客戶端字元集:在isql環境中執行: 1>; select @@client_csname 2>; go 修改服務端字元集方法:假設sybase安裝目錄為$sybase$ ◆1.轉到$sybase$\ASE-15_0\bin目錄 執行命令:charset -Usa -P binary.srt cp936 ◆2.打開isql,執行下面的SQL查詢出cp936對應的id select id , name from syscharsets where name = 'cp936' go 假設查詢結果為171 執行下面語句設定默認字元集 sp_configure 'default char',171 --可能有誤,以上面的查詢結果為准 go 關閉ASE shutdown go ◆3.重新啟動sybase服務兩次(第一次啟動會失敗),啟動服務。

與修改伺服器字元集相關的知識