`
chenjian_791
  • 浏览: 20694 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

mysql 编译时增加字符集的配置

阅读更多
如果你在你的my.cnf文件中增加了 default-character-set = gbk 但是当你无法启动mysql,错误日志里面报告类似于这样的: 060625 01:37:00 mysqld started
^G/usr/local/mysql/libexec/mysqld: File ‘/usr/local/mysql/share/mysql/charsets/gb2312.conf’ not found (Errcode: 2)
^G/usr/local/mysql/libexec/mysqld: Character set ‘gb2312′ is not a compiled character set and is not specified in the ‘/usr/local/mysql/share/mysql/charsets/Index’ file
060625 01:37:00 mysqld ended 错误的时候,

目前我的解决方法是重新编译mysql,在编译的参数中加入
–with-extra-charsets=gbk,gb2312 


便可解决此问题。
一般的编译这样似乎就可以了吧?

./configure –prefix=/usr/local/mysql –sysconfdir=/etc/ –with-mysqld-ldflags=-all-static –enable-assembler –disable-shared –with-extra-charsets=gbk,gb2312 && make && make install 


需要注意的是,如果编译失败重新编译前,一定要先将解压缩的mysql源码包目录删除,重新解压缩,重新编译!!!

下面付上原文
引用
mysql安装笔记

cloud/2003.10.10
mail:flashc@21cn.com
欢迎转载,转载请保留上述信息,谢谢

学习了很长时间的linux,有必要做一下整理笔记了,以下是mysql的安装笔记,和常见的一些使用方法。
因我喜欢调试优化系统,所以在编译安装时使用了一些选项增加编程后程序的执行效率,有些可能我理解有错,希望大家指出.


●安装mysql
# tar zxvf mysql-4.0.14.tar.gz -C /setup
# cd /setup/mysql-4.0.14
# groupadd mysql
# useradd mysql -g mysql -M -s /bin/false
# ./configure –prefix=/web/mysql \ 指定安装目录
–without-debug \去除debug模式
–with-extra-charsets=gb2312 \添加gb2312中文字符支持
–enable-assembler \使用一些字符函数的汇编版本
–without-isam \去掉isam表类型支持 现在很少用了 isam表是一种依赖平台的表
–without-innodb \去掉innodb表支持 innodb是一种支持事务处理的表,适合企业级应用
–with-pthread \强制使用pthread库(posix线程库)
–enable-thread-safe-client \以线程方式编译客户端
–with-client-ldflags=-all-static \
–with-mysqld-ldflags=-all-static \以纯静态方式编译服务端和客户端 –with-raid \激活raid支持

# make
# make install
# scripts/mysql_install_db \生成mysql用户数据库和表文件
# cp support-files/my-medium.cnf /etc/my.cnf \copy配置文件,有large,medium,small三个环境下的,根据机器性能选择,如果负荷比较大,可修改里面的一些变量的内存使用值
# cp support-files/mysql.server /etc/init.d/mysqld \copy启动的mysqld文件
# chmod 700 /etc/init.d/mysqld
# cd /web
# chmod 750 mysql -R
# chgrp mysql mysql -R
# chown mysql mysql/var -R
# cd /web/mysql/libexec
# cp mysqld mysqld.old
# strip mysqld
# chkconfig –add mysqld
# chkconfig –level 345 mysqld on
# service mysqld start
# netstat -atln
看看有没有3306的端口打开,如果mysqld不能启动,看看/web/mysql/var下的出错日志,一般都是目录权限没有设置好的问题
# ln -s /web/mysql/bin/mysql /sbin/mysql
# ln -s /web/mysql/bin/mysqladmin /sbin/mysqladmin
# mysqladmin -uroot password “youpassword” #设置root帐户的密码
# mysql -uroot -p
# 输入你设置的密码
mysql>;use mysql;
mysql>;delete from user where password=”"; #删除用于本机匿名连接的空密码帐号
mysql>;flush privileges;
mysql>;quit

●安装DBI和DBD for mysql 用于提供perl访问mysql数据库的接口规范,请确认你已经安装了perl,一般默认系统都装上了

# cd /setup
# tar zxvf DBD-mysql-2.9002.tar.gz -C /setup
# tar zxvf DBI-1.38.tar.gz -C /setup
# cd DBI-1.38
# perl Makefile.PL
# make
# make test
# make install
因为有的perl程序中perl的路径是/usr/local/bin/perl,而红帽系统默认是/usr/bin/perl,所以最好做一个连接,保证兼容性
# ln -s /usr/bin/perl /usr/local/bin/perl
# cd ../DBD-mysql-2.9002
生成安装配置文件需要在perl Makefile.PL后添加一些参数,比较麻烦,我们可以通过添加一个到/web/mysql/bin/mysql_config这个程序的连接解决问题
系统会自动寻找这个命令生成安装所需要的数据库参数
# ln -s /web/mysql/bin/mysql_config /sbin/mysql_config
# perl Makefile.PL
# make
# make instll (这里make test我总是运行一半就出错,但是安装后是可以运行mysql目录下的测试脚本,不知道3.x的mysql如何)
现在你可以运行测试脚本了,不过速度很慢,挂在后台好了
# perl /web/mysql/sql-bench/run-all-tests –user=root –password=”youpassword”

附:
●mysql常见的一些有用的选项和命令
mysqld —–开启日志支持
–log
–log-update
–log-long-formart
●mysql
grant all on database.* to user identified by “password” 新建一user用户,赋予其database数据库的所有权限
revoke all on database from user 移除user用户在database数据库上的所有权限
mysql -uroot -p –one-database databasename < file.sql 从file.sql文件导入sql语句到databasename这个数据库里
●mysqladmin
mysqladmin flush-logs 命令mysqld重新打开一个新的日志文件,就是清空老日志文件,相当于轮回了
●mysqldump
--add-drop-table 导出sql语句时添加droptable if exists语句
--quick 快速导出
--opt 优化选项(推荐)
●myisamchk
检查表选项
--extend-check 扩展检查
--medium-check 速度比较折中的一个检查选项
修复表选项
--recover 修复表文件
--safe-recover 安全修复表文件,比--recover要慢
修饰修复表项
--force 强制清除上次的临时文件
--quick 只根据素引文件的内容进行修复
●mysql的管理
可以使用phpmyadmin(需要php的环境支持)和mysqlcc(linux图形界面支持,WINDOWS系统支持)


分享到:
评论

相关推荐

    MySQL客户端选项中的字符集配置.pdf

    #### 四、处理未编译字符集的问题 在某些情况下,如果使用的字符集未被编译进MySQL的二进制文件中,可能会遇到以下几种情况: 1. **路径问题**:如果程序使用错误的路径查找字符集文件,可以通过`--charactersets-...

    Mysql编译安装Mysql编译安装

    MySQL编译安装是一个复杂但必要的过程,特别是在你需要特定配置或者最新版本的情况下。下面是一份详细的步骤指南,涵盖了从源码编译安装MySQL的主要步骤。 首先,确保你的系统满足编译MySQL的基本需求,包括一个...

    MySQL编译选项说明

    ### MySQL编译选项详解 #### 一、概述 在安装MySQL的过程中,为了适应不同的环境需求,用户可以在编译阶段通过指定一系列编译选项来定制化MySQL的安装与配置。这些选项涉及MySQL的安装路径、存储引擎的选择以及...

    Mysql 5.6 源码编译安装

    接下来进行MySQL的编译配置,这是整个过程中最复杂的部分。 1. **配置编译参数**: - 使用`cmake`工具进行配置,主要参数包括: - `CMAKE_INSTALL_PREFIX`: 指定MySQL的安装路径; - `MYSQL_DATADIR`: 数据库的...

    MySQL编译安装1

    MySQL编译安装是一个复杂但必要的过程,特别是在你需要特定存储引擎或者自定义配置的情况下。下面将详细解释这个过程。 首先,我们需要准备编译环境。这里提到的是使用`cmake`作为跨平台的编译工具。安装`cmake`的...

    教你如何在Linux上编译MySql5.6源码 菜鸟必备

    你可以根据需求调整参数,如安装路径、字符集等。一个基本的配置示例如下: ``` ./configure --prefix=/usr/local/mysql --with-extra-charsets=all --enable-assembler --with-openssl --with-readline --with-...

    让你的MySQL完全中文化

    在配置 MySQL 时,我们需要修改配置文件,以便使 MySQL 的默认字符集为 gbk。例如,我们可以在配置文件中添加以下语句:default-character-set=gbk,以便使 MySQL 的默认字符集为 gbk。 使 MySQL 完全中文化需要...

    linux下mysql5.5编译安装笔记(完整安装教程)

    使用CMake配置编译选项,这些选项包括安装路径、socket文件位置、字符集、存储引擎等: ``` cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \ -DDEFAULT_CHARSET=utf...

    mysql 编译安装参数

    ### MySQL编译安装参数详解 在进行MySQL服务器的编译安装过程中,正确配置`./configure`脚本中的各项参数对于确保MySQL服务器的功能性和性能至关重要。本文将详细介绍这些参数的意义及应用场景,帮助用户根据自身...

    mysql-5.0.45源代码(可以编译通过)

    10. **编码与字符集**:MySQL 5.0支持多种字符集,包括UTF-8,能够处理多种语言的数据。 11. **编译安装**:下载源代码后,需要通过配置、编译和安装步骤才能在系统中使用。这涉及到熟悉编译工具(如GCC)、配置...

    编译安装mysql1

    在本文中,我们将深入探讨如何在RHEL5环境下编译安装MySQL 5.5.34,这是一个重要的任务,特别是对于那些需要自定义配置或管理MySQL服务器的IT专业人士。MySQL是一个广泛使用的开源关系型数据库管理系统,而源码编译...

    mysql安装后添加gbk字符集的方法

    重新编译MySQL时,需要指定所需的字符集。使用`./configure`命令,添加参数`--with-charset=gbk`来设置GBK为默认字符集,`--with-collation=gbk_chinese_ci`设置GBK中文排序规则。`--with-extra-charsets=complex`...

    mysql编译安装及主备环境搭建

    编译MySQL时,使用`cmake`来配置安装路径、套接字路径、字符集和排序规则等。例如,`-DCMAKE_INSTALL_PREFIX=/usr/local/mysql`设置安装目录,`-DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.sock`设置套接字路径,`-D...

    RHEL 7.6 源码编译安装Mysql 8.0.X.docx

    可能需要指定特定的路径和其他选项,例如数据库的安装位置、字符集等。 3. **编译MySQL**:运行`make`命令编译源代码。 4. **安装MySQL**:使用`make install`命令将编译后的MySQL安装到指定的目录。 5. **初始化...

Global site tag (gtag.js) - Google Analytics