Home  >  Article  >  Database  >  Linux编译安装MySQL5.6及修改字符集

Linux编译安装MySQL5.6及修改字符集

WBOY
WBOYOriginal
2016-06-07 15:55:011001browse

环境准备:mysql5.5以后./configure编译方式就改为cmake工具来编译。安装依赖包: yum install -y cmake gcc gcc-c++ make cmake

环境准备:
mysql5.5以后./configure编译方式就改为cmake工具来编译。
安装依赖包: yum install -y cmake gcc gcc-c++ make cmake ncurses ncurses-devel
创建mysql用户和组:
groupadd mysql
useradd -g mysql -s /sbin/nologin mysql
1.安装mysql
下载:

tar zxvf mysql-5.6.14.tar.gz
cd mysql-5.6.14
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.6 \
-DSYSCONFDIR=/usr/local/mysql/etc \
-DMYSQL_DATADIR=/usr/local/mysql5.6/data
make && make install

如果依赖包没有安装,编译配置会报错缺少什么库,安装相关包即可,再删除CMakeCache.txt!

2.初始化数据库和配置

/usr/local/mysql5.6/scripts/mysql_install_db \
--basedir=/usr/local/mysql5.6 --datadir= /usr/local/mysql5.6/data \
--user=mysql& #初始化数据库
mkdir -p /usr/local/mysql5.6/etc
cp support-files/my-medium.cnf /usr/local/mysql/etc/my.cnf
cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/init.d/mysqld
chown -R root.mysql /usr/local/mysql/        #赋予mysql属组权限
chown -R mysql.mysql /usr/local/mysql/data    #赋予数据存放目录权限
/usr/local/mysql5.6/bin/mysqld_safe –user=mysql&      #安全启动mysql
echo‘PATH=$PATH:/usr/local/mysql/bin' >> /etc/profile  #设置变量,,方便使用mysql命令
source /etc/profile

3.设置mysql默认创建数据库编码

vi /usr/local/mysql/etc/my.cnf
在[mysqld]下添加
default-character-set=utf8
或者 default-character-set=gbk  #防止网站出现乱码
在[client]下添加
default-character-set=utf8
或者 default-character-set=gbk

4.测试是否安装成功

service mysqld start
如果启动报错:
Starting MySQL. ERROR! The server quit without updating PID file (/var/lib/mysql/202.pid)
解决:rm -rf /etc/my.cnf #删除自带的配置文件

mysqladmin -uroot password '123.com'  #设置初次登陆mysql密码
mysql -u root -p123456
mysql> show databases;
+——————–+
| Database |
+——————–+
| information_schema |
| mysql |
| test |
+——————–+
6rows inset(0.00sec)

5.常用编译参数

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql  #安装路径
-DMYSQL_DATADIR=/usr/local/mysql/data    #数据文件存放位置
-DSYSCONFDIR=/usr/local/mysql/etc        #my.cnf路径
-DWITH_MYISAM_STORAGE_ENGINE=1          #支持MyIASM引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1        #支持InnoDB引擎
-DWITH_MEMORY_STORAGE_ENGINE=1          #支持MEMORY引擎
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock      #连接数据库socket路径
-DMYSQL_TCP_PORT=3306                    #默认端口
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk    #安装需要的字符集
-DDEFAULT_CHARSET=utf8                  #默认字符集
-DDEFAULT_COLLATION=utf8_general_ci      #设置默认效验字符集排序规则,要和DDEFAULT_CHARSET一起用
-DMYSQL_USER=mysql                      #运行用户
-DWITH_COMMENT=’string’                #注释存储类型

6、MySQL字符集介绍及修改(编码)

常用字符集:atin英文,big5繁体中文,GB2312中文,UTF8通用语言

Mysql对于字符集的支持细化到四个层次:
服务器(server);
数据库(database);
数据表(table)(字段column);
连接(connection);
方法1:主配置文件修改my.cnf
[mysqld]
character_set_server=utf8
[mysql]
default-character-set=utf8

重启mysql!
方法2:Mysql命令修改(网站乱码如下解决)
1.查看数据库使用的字符集:
123 mysql> show variables like 'character\_set\_%';
mysql> show variables like 'char%';
mysql> show create table tablename;  #查看创建表时字符集

2.修改默认字符集
 2.1修改服务器默认字符集
 set character_set_server=utf8

 2.2修改数据库字符集
 set character_set_database=utf8;
 2.3修改数据库客户端字符集
 set character_set_client=utf8;
 2.4修改连接默认字符集
 set character_set_connection=utf8
3.修改已经存在库的字符集
 3.1修改存在数据库的字符集
 alter database mydb character set utf-8;
 3.2修改存在表的字符集
 alter table mytable default character set utf8

本文永久更新链接地址

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn