linux下源码安装mysql 5.5 系列字符集bug

2015-07-27 15:57:00
hainuo
原创 2762
摘要:phpstudy的mysql 编译安装有问题
什么问题呢》 先上代码```function install_mysql(){    echo "install mysql 5.5" >>  phpstudy-install.log    down_file mysql-5.5.36.tar.gz    killall mysqld    groupadd mysql    useradd -s /sbin/nologin -M -g mysql mysql    chown mysql:mysql -R /phpstudy/data    chown mysql:mysql -R /phpstudy/mysql    chmod -R 755 /phpstudy/data    tar -zxvf mysql-5.5.36.tar.gz    cd mysql-5.5.36    cmake . -DCMAKE_INSTALL_PREFIX=/phpstudy/mysql -DMYSQL_UNIX_ADDR=/phpstudy/data/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/phpstudy/data/ -DMYSQL_USER=mysql    make    make install    cp -f support-files/my-medium.cnf /etc/my.cnf    chmod 755 /phpstudy/mysql/scripts/mysql_install_db    /phpstudy/mysql/scripts/mysql_install_db --user=mysql --basedir=/phpstudy/mysql --datadir=/phpstudy/data    rm -rf /etc/mysql/my.cnf    /phpstudy/mysql/support-files/mysql.server start    sleep 5s    /phpstudy/mysql/bin/mysqladmin -uroot password "root"    cd ..        re=`ps -ef|grep mysqld|grep -v "grep " |wc -l`if [ $re -gt 0 ]    then    echo "MySQL">/phpstudy/mysql/do_not_delete    fi}```这种方式安装完后字符集如这样显示![1437985735125424.png](/ueditor/php/upload/image/20150727/1437985735125424.png "1437985735125424.png")其实关键点在这句话上```cmake . -DCMAKE_INSTALL_PREFIX=/phpstudy/mysql -DMYSQL_UNIX_ADDR=/phpstudy/data/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/phpstudy/data/ -DMYSQL_USER=mysql```在cmake进行编译是,出现这样的设置错误,```-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk```这个并不能够安装上gbk支持  应该使用的方式是```-DEXTRA_CHARSETS=all```替换后就会安装所有的语言字符集支持,这样就保证了使用。 先要对系统的支持语言进行设置我百度搜索后根据这个页面做了系统locales的更改[http://www.linuxidc.com/Linux/2009-06/20626.htm](http://www.linuxidc.com/Linux/2009-06/20626.htm)Ubuntu默认安装的中文环境为zh_CN.utf8,然后很多windows的文档还是以GB2312或GBK编码保存的,因此十分有必要在Ubuntu下生成GBK或GB2312的locale.具体方法如下:1.修改/var/lib/locales/supported.d/local文件,在文件中添加zh_CN.GBK GBKzh_CN.GB2312 GB23122.sudo dpkg-reconfigure --force locales然后在输出的结果中会出现zh_CN.GB2312 donezh_CN.GBK done然后可以通过先推出phpmyadmin 再重新登录方式查看是否有字符集了 最后效果也如这个![1437985952128656.png](/ueditor/php/upload/image/20150727/1437985952128656.png "1437985952128656.png")其实最后还是说明 这不是phpstudy的问题应该是mysql 5.5系列的问题
发表评论
叁 加 捌 =
评论通过审核后显示。