mysql配置命令 CHARACTER_SET_%字符集设置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql配置命令 CHARACTER_SET_%字符集设置相关的知识,希望对你有一定的参考价值。
参照: http://blog.csdn.net/mzlqh/article/details/7621307点击打开链接 其实现在的ubuntu12.04 直接sudo apt-get install mysql 就可以了,mysql-client会自动地为你装上 #查看mysql是否正在运行 sudo netstat -tap | grep mysql 如果是正在运行,则 tcp 0 0 localhost.localdomain:mysql *:* LISTEN - 重启mysql sudo /etc/init.d/mysql restart 配置 MySQL 的管理员密码: 1 sudo mysqladmin -u root password newpassword 三、 MySQL服务 加入开机自启动 加入开机自启动: sudo update-rc.d mysql defaults 从开机自启动中移出: sudo update-rc.d -f mysql remove 四、远程连接ubuntu下MySQL vim /etc/mysql/my.cnf找到 bind-address = 127.0.0.1 这行,注释掉(如下) #bind-address = 127.0.0.1 或者改为 bind-address = 0.0.0.0 允许任意IP访问,或者自己指定一个IP地址。 然后重启 MySQL sudo /etc/init.d/mysql restart 授权用户能进行远程连接 grant all privileges on *.* to root@"%" identified by "password" with grant option; flush privileges; 第一行命令解释如下,*.*:第一个*代表数据库名;第二个*代表表名。这里的意思是所有数据库里的所有表都授权给用户。root:授予root账号。“%”:表示授权的用户IP可以指定,这里代表任意的IP地址都能访问MySQL数据库。“password”:分配账号对应的密码,这里密码自己替换成你的mysql root帐号密码。 第二行命令是刷新权限信息,也即是让我们所作的设置马上生效。 此时再远程连接ubuntu下的MySQL应该能够连接上了。 解决mysql插入中文字符时出现乱码 [sql] view plain copy print? 01.比如你可以在建库时设置默认编码为utf8: 02.create database mydb default character set utf8 collate utf8_general_ci; [sql] view plain copy print? 01.问题解决了,原因是在my.cnf中缺少了如下代码: 02.[client] 03.default-character-set=utf8 04.[mysqld] 05.default-character-set=utf8 06. 07. 08.如果不加以上代码,那么即便MYSQL编译安装时指定的编码是UTF8,那么在建库时其默认编码仍是LATIN1,而由于字符集的继承性,库中的表也是LATIN1的了。 09. 10. 11.这里列几条命令,大家可以自己试下: 12.1.列出MYSQL支持的所有字符集: 13.SHOW CHARACTER SET; 14. 15.2.当前MYSQL服务器字符集设置 16.SHOW VARIABLES LIKE ‘character_set_%‘; 17. 18.3.当前MYSQL服务器字符集校验设置 19.SHOW VARIABLES LIKE ‘collation_%‘; 20. 21.4.显示某数据库字符集设置 22.show create database 数据库名; 23. 24.5.显示某数据表字符集设置 25.show create table 表名; 26. 27.6.修改数据库字符集 28.alter database 数据库名 default character set ‘utf8‘; 29. 30.7.修改数据表字符集 31.alter table 表名 default character set ‘utf8‘; 32. 33.8.建库时指定字符集 34.create database 数据库名 character set gbk collate gbk_chinese_ci; 35. 36.9.建表时指定字符集 37.CREATE TABLE `mysqlcode` ( 38.`id` TINYINT( 255 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , 39.`content` VARCHAR( 255 ) NOT NULL 40.) TYPE = MYISAM CHARACTER SET gbk COLLATE gbk_chinese_ci; ubuntu12.04 mysql配置文件路径是/etc/mysql/my.cof [sql] view plain copy print? 01.(2)用命令show variables like ‘character\_set\_%‘;查看当前字符集设定: [sql] view plain copy print? 01.修改mysql字符编码出现Job failed to start解决办法 02. 03.在python mange.py shell下填充MySQL数据库的时候,发现汉字不能输入。 04.于是要修改一下MySQL数据库编码。 05. 06.从网上找到如下资料: 07.$sudo gedit /etc/mysql/my.cnf 08.[client]下添加: 09. 10.default-character-set=utf8 11. 12.[mysqld]下添加: 13. 14.default-character-set=utf8 15. 16. 然后保存退出 17. 18.$sudo service mysql restart 19. 20. 结果出现了Job failed to start 21. www.2cto.com 22.---------------------------------------------------------------------------------------------------------------------------- 23.可能是版本的问题,查5.5以后的版本对字符编码方式修改的办法,发现[mysqld]修改方法变了: 24. 25.[mysqld]下添加的应该为: 26. 27.character-set-server=utf8 28. 29.collation-server=utf8_general_ci 30. 31.保存退出 32. 33.$sudo service mysql restart 34. 35.成功 36. 37.进入MySQL控制台: 38. 39. show variables like ‘character%‘; 40. www.2cto.com 41.+-----------------------------------+-----------------------------------+ 42.| Variable_name | Value | 43. 44.+-----------------------------------+-----------------------------------+ 45. 46.| character_set_client | utf8 | 47. 48.| character_set_connection | utf8 | 49. 50.| character_set_database | utf8 | 51. 52.| character_set_filesystem | binary | 53. 54.| character_set_results | utf8 | 55. www.2cto.com 56.| character_set_server | utf8 | 57. 58.| character_set_system | utf8 | 59. 60.| character_sets_dir | /usr/share/mysql/charsets/ | 61. 62.+------------------------------------+-----------------------------------+ 63. 64.8 rows in set (0.00 sec) 65. 66.已经修改成功,做下记录。 67. 68. 最后是这样做的: [sql] view plain copy print? 01. $sudo gedit /etc/ mysql/my.cnf 02.[client]下添加: 03. 04.default-character-set=utf8 05.[mysqld]下添加的应该为: 06. 07.character-set-server=utf8 08. 09.collation-server=utf8_general_ci 10. 11.保存退出 12. 13.$sudo service mysql restart 14. 15.成功 但是中文乱码的解决道路还没有结束 [sql] view plain copy print? 01.character_set_server 服务器的默认字符集。 02.character_set_database 默认数据库使用的字符集。当默认数据库更改时,服务器则设置该变量。如果没有默认数据库,变量的值同character_set_server。 03.show variables like ‘character%‘; 04.你用set @@character_set_database=utf8 05.show variables like ‘character%‘; 06.在看下character_set_server的值 成功了!
以上是关于mysql配置命令 CHARACTER_SET_%字符集设置的主要内容,如果未能解决你的问题,请参考以下文章