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

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

环境准备:

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

下载:http://dev.mysql.com/downloads/mysql

1
2
3
4
5
6
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.初始化数据库和配置

1
2
3
4
5
6
7
8
9
10
11
12
/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/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默认创建数据库编码

1
2
3
4
5
6
7
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 #删除自带的配置文件

1
2
3
4
5
6
7
8
9
10
11
mysqladmin -uroot password  '123.com'   #设置初次登陆mysql密码
mysql -u root -p123456
mysql> show databases;
+——————–+
| Database |
+——————–+
| information_schema |
| mysql |
| test |
+——————–+
6rows inset( 0 .00sec)

5.常用编译参数

1
2
3
4
5
6
7
8
9
10
11
12
13
-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.查看数据库使用的字符集:

1
2
3
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

 3.3修改存在表字段字符集

 alter table mytable change old_column new_column varchar(255) character set utf8; 



本文转自 李振良OK 51CTO博客,原文链接:http://blog.51cto.com/lizhenliang/1290440,如需转载请自行联系原作者

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
27天前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
57 3
|
27天前
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
34 3
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
82 3
|
1月前
|
关系型数据库 MySQL Linux
Linux系统如何设置自启动服务在MySQL数据库启动后执行?
【10月更文挑战第25天】Linux系统如何设置自启动服务在MySQL数据库启动后执行?
91 3
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
98 2
|
2月前
|
Ubuntu 关系型数据库 MySQL
Linux系统MySQL安装
【10月更文挑战第19天】本文介绍了在 Linux 系统上安装 MySQL 的步骤,包括安装前准备、安装 MySQL、启动 MySQL 服务、配置 MySQL 以及验证安装。适用于 Ubuntu/Debian 和 CentOS/Fedora 系统,提供了详细的命令示例。
235 1
|
2月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置服务等,并与使用 RPM 包安装进行了对比,帮助读者根据需求选择合适的方法。编译源码安装虽然复杂,但提供了更高的定制性和灵活性。
276 2
|
2月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤
【10月更文挑战第7天】本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据自身需求选择合适的方法。
60 3
|
22天前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
128 6