
方法/步骤
如果没有配置好cmd里面的mysql 环境变量,那就在系统高级设置那儿进行MySQL的环境变量设置。
win+R,调出“运行”,输入cmd,回车
登录数据库,
查看数据库
查看数据库字符编码
通过MySQL命令行修改:(编码可选)
mysql> set character_set_client=utf8;
mysql> set character_set_connection=utf8;
mysql> set character_set_database=utf8;
mysql> set character_set_results=utf8;
mysql> set character_set_server=utf8;
mysql> set character_set_system=utf8;
mysql> set collation_connection=utf8;
mysql> set collation_database=utf8;
mysql> set collation_server=utf8;
当然还有:
修改数据库的字符集mysql>use mydb
mysql>alter database mydb character set utf8;
8
创建数据库指定数据库的字符集
mysql>create database mydb character set utf8;
在Unix下,可以编辑mycnf文件进行编码修改,Windows下可以直接用Mysql Server Instance Config Wizard 进行设置。
在linux下修改3个 mycnf 中 /etc/mysql/mycnf 文件
找到[client] 在下面添加
default-character-set=utf8 默认字符集为utf8
再找到[mysqld] 添加
default-character-set=utf8 默认字符集为utf8
init_connect='SET NAMES utf8' (设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行)
修改好后,重新启动mysql 即可,查询一下show variables like 'character%';
此方法用于标准mysql版本同样有效,对于/etc/mycnf文件,需要从mysql/support-files的文件夹复制 my-largecnf 到 /etc/mycnf 。
新建一个模板,比如 template_utf8 ,设置好UTF-8以及plpgsql之类的lang还有插件,从这个数据库新建就全是UFT-8了。
如果是更改的话,需要先把数据库导出为SQL, 再新建,而后导入。导入前,修改SQL里的create 语句,指定字符集。有汉字的话,另存为UTF-8的编码,再导入。
关键字:字符集gbkutf8开始表w的字符集设置成了gbk,但是现在的建的表要求字符集为utf8。于是:alter
table
`w`
default
character
set
utf8;或者alter
table
tbl_name
convert
to
character
set
charset_name;但是发现其中一个字段content的字符集还是gbk。于是更改mysql数据库表中某个字段的字符集,修改字段的定义:alter
table
`w`
modify
column
`content`
varchar(30)
character
set
utf8
not
null;
1、改客户端字符集:通过WINDOWS的运行菜单运行Regedit,修改注册表
Start -> Run -> Rededit <-|
Under registry Editor - > HKEY_LOCAL_MACHINE -> SOFTWARE ->ORACLE->KEY_XE->RIGHT WINDOW DOUBLE CLICK NLS_LANG -> CHANGE VALUE TO "AMERICAN_AMERICAUTF8" ->OK ->CLOSE REGISTRY
正确设置ORACLE客户端字符集的方法:
oracle客户端字符集设置需要和服务器端一致,否则会出现乱码问题。
首先连接服务器,查询服务器端设置:
select from v$nls_parameters;
找到:
NLS_LANGUAGE
NLS_TERRITORY
NLS_CHARACTERSET
环境变量nls_lang便是由这三部分组成
NLS_LANG = language_territorycharset
比如:
NLS_LANG = American_JapanJA16SJIS
2、改服务器端字符集,通过ORACLE的SQL PLUS命令窗口改
在SQLPLUS 中,以DBA登录
conn 用户名 as sysdba
然后执行以下命令
>shutdown immediate; (把database停了)
>startup mount; (把database重开去可更改情况)
>alter system enable restricted session;
>alter system set job_queue_processes=0;
>alter system set aq_tm_processes=0;
>alter database open;
>alter database character set utf8;
OR
>alter database character set internal_use utf8;
>shutdown immediate;
>startup; (重开正常oracle)
ORACLE数据库字符集修改完成!
本文对修改Oracle数据库字符集为UTF8的语句 *** 作讲解:查看字符集select userenv('language') from dual;1conn/as sysdba2执行下面代码:SHUTDOWN IMMEDIATE;STARTUP MOUNT EXCLUSIVE;ALTER SYSTEM ENABLE RESTRICTED SESSION;ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;ALTER SYSTEM SET AQ_TM_PROCESSES=0;ALTER DATABASE OPEN;(------------如果有问题请在此插入下面语句--------------)ALTER DATABASE NATIONAL CHARACTER SET UTF8;ALTER DATABASE CHARACTER SET UTF8;SHUTDOWN immediate;STARTUP;如果修改出现问题时请调用下面语句再执行一次就可以了ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE UTF8;
以上就是关于mysql怎么修改已有数据库的编码方式全部的内容,包括:mysql怎么修改已有数据库的编码方式、mysql数据库怎么改它的字符集编码、如何修改数据库的字符集等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)