源码编译安装mysql

mysql 5.5.8要使用cmake编译

1)创建用户

# useradd -r -s /sbin/nologin mysql

# id mysql

uid=101(mysql) gid=101(mysql) groups=101(mysql)

# chown -R mysql.mysql /data/mysql/

说明:

# which cmake

/usr/local/bin/cmake

2)编译

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

3)初始化mysql

# chown -R :mysql . (与二进制安装略有不同,二进制安装时,属主和属组为root,此处编译后,属主和属组为mysql)

# scripts/mysql_install_db --user=mysql --datadir=/data/mysql/

4)配置文件

# cp support-files/my-large.cnf /etc/my.cnf

在[mysqld]中增加,指定数据库的路径

datadir = /data/mysql

5)服务脚本

# cp support-files/mysql.server /etc/init.d/mysqld


安装完成后注意事项

1)删除匿名用户(否则导致系统漏洞)

mysql> use mysql;

mysql> select user,host,password from user;

其中有两个匿名用户

  1. +------+-----------------------+-------------------------------------------+
  2. | user | host                  | password                                  |
  3. +------+-----------------------+-------------------------------------------+
  4. | root | localhost             | *A3CD8B69C29498EBAAAFC325115D21B6A630A9F9 |
  5. | root | localhost.localdomain | *A3CD8B69C29498EBAAAFC325115D21B6A630A9F9 |
  6. | root | 127.0.0.1             | *A3CD8B69C29498EBAAAFC325115D21B6A630A9F9 |
  7. | | localhost | |
  8. | | localhost.localdomain   |                                                 |
  9. +------+-----------------------+-------------------------------------------+

mysql> drop user ‘‘@‘localhost‘;

Query OK, 0 rows affected (0.00 sec)

mysql> drop user ‘‘@‘localhost.localdomain‘;

Query OK, 0 rows affected (0.00 sec)

2)为root用户增加密码(在mysql客户端中,命令不区分大小写)

方法1

# mysqladmin -u USERNAME -h HOSTNAME password ‘NEW_PASS‘ -p

方法2

mysql> SET PASSWORD FOR ‘USERNAME‘@‘HOST‘=PASSWORD(‘new_pass‘);

方法3

mysql> update user set password=password(‘hiayng‘) where user=‘root‘;

select user,host,password from user;

3)在家目录下建立如下文件,注意权限,可以免输入密码

[client]

user=root

password=hiyang

host=127.0.0.1


C/S通信方式

在同一台主机 使用mysql.socket通信

在不同主机TCP/IP通信


MyISAM存储的表包含3个文件

.frm:表结构定义文件

.MYD:表数据

.MYI:表索引

InnoDB存储的表包含3个文件

所有表共享一个表空间文件;

建议:每表一个独立的表空间文件;但有些新特性不支持

.frm: 表结构

.ibd: 表空间(表数据和表索引)

为每个表设置独立的表空间

1)查看,innodb_file_per_table未打开

  1. mysql> show variables like "%innodb_file%";
  2. +--------------------------+----------+
  3. | Variable_name | Value |
  4. +--------------------------+----------+
  5. | innodb_file_format | Antelope |
  6. | innodb_file_format_check | ON |
  7. | innodb_file_format_max | Antelope |
  8. | innodb_file_per_table | OFF |
  9. +--------------------------+----------+

2)编辑配置文件

# vim /etc/my.cnf

在[mysqld]下增加

  1. innodb_file_per_table = 1

3)测试

将测试reload不会生效,必须重启

  1. # service mysqld restart

如下

  1. mysql> show variables like "%innodb_file%";
  2. +--------------------------+----------+
  3. | Variable_name            | Value    |
  4. +--------------------------+----------+
  5. | innodb_file_format       | Antelope |
  6. | innodb_file_format_check | ON       |
  7. | innodb_file_format_max   | Antelope |
  8. | innodb_file_per_table    | ON       |
  9. +--------------------------+----------+


创建InnoDB表(5.5.8后默认创建表是InnoDB格式的)

mysql> create database mydb;

mysql> use mydb;

Database changed

mysql> create table test_tb(id int not null,name char(30));

# ls ./mydb

db.opt  test_tb.frm  test_tb.ibd

# 当前表使用的字符集和排序规则

# cat db.opt

default-character-set=utf8

default-collation=utf8_general_ci


来自为知笔记(Wiz)

时间: 2024-10-29 19:11:50

源码编译安装mysql的相关文章

linux学习笔记——源码编译安装Mysql

#######Redhat6.5源码编译安装Mysql########实验环境:1.IP:172.25.8.32.磁盘要大于20G先添加一块大于20G的磁盘fdisk /dev/vdb        ##得到/dev/vdb1 8e linuxpvcreate /dev/vdb1    ##把物理分区做成物理卷vgextend vg_server1 /dev/vdb1    ##把新建立的/dev/vdb1添加到vg_server1中lvextend -L 20G /dev/vg_server1

CentOS源码编译安装MySQL 5.5.15

CentOS源码编译安装MySQL 5.5.15 文章目录 [隐藏] 安装编译工具 下载源码 安装cmake和bison 编译安装MySQL 一些相关设置 安装编译工具 yum install gcc gcc-c++ yum install ncurses-devel 下载源码 mkdir -p /tmp cd /tmp wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.15.tar.gz/from/http://mysql.

CentOS 6.6 下源码编译安装MySQL 5.7.5

版权声明:转自:http://www.linuxidc.com/Linux/2015-08/121667.htm 说明:CentOS 6.6 下源码编译安装MySQL 5.7.5 1. 安装相关工具# yum -y install gcc-c++ ncurses-devel cmake make perl \ gcc autoconf automake zlib libxml libgcrypt libtool bison2. 清理环境检查boost版本: # rpm -qa boost*卸载b

源码编译安装 MySQL 5.5.x 实践(转)

1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz # tar zxvf cmake-2.8.4.tar.gz # cd cmake-2.8.4 # ./configure# make# make install 2.确保以下所需系统软件包已经被安装通过

源码编译安装 MySQL 5.5.x 实践

1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz # tar zxvf cmake-2.8.4.tar.gz # cd cmake-2.8.4 # ./configure# make# make install 2.确保以下所需系统软件包已经被安装通过

CentOS 6.5源码编译安装MySQL 5.6

对于服务器的环境,个人觉得还是源码编译安装的非常靠谱,假如有服务器要变更,直接rm掉安装目录即可.有些人喜欢yum安装,但是在卸载yum remove的时候,一不小心,就卸载了一个基础库,导致系统的shell命令失效,情节严重的可能连系统启动都会存在问题. 1. 安装系统的一些必要基础库 yum -y install  gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtoo

Linux 源码编译安装 MySQL 5.5.x

Linux 环境:CentOS 6.5 MySQL 版本:5.5.20,附下载地址:[点击下载] 1.安装cmake MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具. 因此,我们首先要在系统中源码编译安装cmake工具. 下载 cmake [[email protected] soft]# wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz 解压 [[email protec

SUSE Linux源码编译安装MySQL 5.6

这篇文章主要介绍了SUSE Linux下源码编译方式安装MySQL 5.6过程分享,本文使用SUSE Linux Enterprise Server 10 SP3 (x86_64)系统,需要的朋友可以参考下.MySQL为开源数据库,因此可以基于源码实现安装.基于源码安装有更多的灵活性.也就是说我们可以针对自己的硬件平台选用合适的编译器来优化编译后的二进制代码,根据不同的软件平台环境调整相关的编译参数,选择自身需要选择不同的安装组件,设定需要的字符集等等一些可以根据特定应用场景所作的各种调整.本文

在CentOS 7上源码编译安装MySQL 5.7

1.系统环境 [[email protected]inux02 ~]# uname -r 3.10.0-514.el7.x86_64 [[email protected] ~]# cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) [[email protected] ~]# rpm -qa | grep mariadb mariadb-libs-5.5.52-1.el7.x86_64 [[email protected] ~

linux下源码编译安装mysql详解

1.redhat5环境下,首先安装编译环境 yum groupinstall -y  "Development Libraries"   "Development Tools" 2.由于源码编译mysql需要cmake命令,所以先要编译安装cmake包 首先下载cmake包,这里下载使用cmake-2.8.8.tar.gz tar xf cmake-2.8.8.tar.gz cd cmake-2.8.8 ./configure make && mak