mysql国内源码安装,mysql 源码包安装

mysql 源码包安装

#downloads

不同的mysql rpm包介绍:

MySQL-devel:mysql开发包。针对mysql进行二次开发使用

MySQL-embedded:嵌入式环境使用的mysql

MySQL-client:mysql客户端

MySQL-server:mysql服务器端

MySQL-shared :被许多软件使用的mysql共享库

MySQL-shared-compat:提供的mysql共享库的兼容。是MySQL-shared的补充

MySQL-test:mysql 的测试组件

对于我们来说最重要的是mysql 服务器软件,和客户端软件

mysql安装完成后的目录结构

bin:mysql的各种二进制程序存放目录

data:默认情况的数据存放目录

include:头文件目录

lib:库文件目录

man:帮助文件目录

mysql-test:测试组件

scripts:  mysql初始化脚本

share:

sql-bench:mysql基准性能测试

support-files:mysql的主配置文件目录主配置文件叫做my.cnf

mysql在Linux下读取配置文件的路径:

/etc/my.cnf   先找这个

/etc/mysql/my.cnf  再找这个

$MYSQL_HOME/my.cnf  最后找这个

也可以启动mysqld时候使用 --defults-extra-file=/path/to/file/my.cnf

mysql安装完成后应该进行的操作:

mysql安装完成后一般会生成5个用户,三个root 和两个匿名用户.

3个root:1 root@127.0.0.1  2.root@localhost 3. root@你的主机名

三个root的密码都为空,应该设置密码

设置密码方法:mysqladmin -u root password ‘your passwd‘

或者 :SET PASSWORD FOR ‘root‘@‘localhost‘ = PASSWORD(‘newpass‘);

两个匿名用户: ‘  ‘ @localhost 和 ‘  ‘@你的主机名

匿名用户应该删除掉。

安装前,确保安装好cmake

cmake 指定编译选项与make不同

指定安装文件的安装路径时常用选项:

-DMAKE_INSTALL_PREFIX=/usr/local/mysql

-DMYSQL_DATADIR=/data/mysql (数据保存路径)

-DSYSCONFDIR=/etc  (配置文件路径)

mysql默认编译的存储引擎包括,csv,myisam,myisammrg和heap,若要安装其他引擎可以使用类似如下选项:

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

-DWITH_FEDERATED_STORAGE_ENGINE=1

若要指定不编译某引擎可以使用如下选项:

-DWITOUT_FEDERATED_STORAGE_ENGINE=1

若要编译其他功能可使用类似如下语句:

-DWITH_READLINE=1  (用于批量导入mysql数据)

-DWITH_SSL=system

其他常用选项:

DMYSQL_TCP_PORT=3306

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock

-DDEFAULT_CHARSETS=utf-8

-DENABLE_PROFILING=1  (mysql性能分析)

安装:

安装依赖软件  yum install gcc

yum install gcc-c++

下载依赖软件cmake      http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz

解压

tar -zxvf   tar zxvf cmake-2.8.4.tar.gz

编译

./configure --prefix=/usr/local/cmake

安装:make && make install

可以使用 cmake . -LH  获取cmake帮助信息

安装完cmake 之后开始准备安装mysql

首先先新建一个mysql用户和mysql组

groupadd -r mysql

useradd -r  -g mysql -s /sbin/nologin mysql

新建一个用于存储数据的mysql目录,建议最好使用一个lvm,我们就先使用目录,在root下建立一个mysqldata目录

做好这些准备后,开始编译mysql

编译,进入到mysql解压目录执行

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql  \

-DMYSQL_DATADIR=/mydata/data \

-DSYSCONFDIR=/etc   \

-DWITH_INNOBASE_STORAGE_ENGINE=1  \

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \

-DDEFAULT_CHARSET=utf8  \

-DDEFAULT_COLLATION=utf8_general_ci \

如果执行上面的cmake 命令出错,提示command not found 说明环境变量没有弄好。

配置cmake 环境变量

echo ‘export PATH=/usr/local/cmake/bin:$PATH‘ >>/etc/profile

刷新配置文件

soucre /etc/profile

如果之前的cmake可以正常执行就可以安装

然后执行 make

最后执行make install

完成后切换到/usr/local/mysql 下面将该目录属主改为mysql

chown -R :mysql .

然后初始化mysql数据库

scripts/mysql_install_db --user=mysql --datadir=/root/mysqldata

复制配置文件到/etc 命名为my.cnf

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

复制mysql.server 到/etc/init.d 目录下命令为mysqld

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

设置开机启动

chkconfig --add mysqld

启动mysql

service mysqld start

报错:Starting MySQL......... ERROR! The server quit without updating PID file

原因:原因应该出现在我们数据存放目录在/root/mysqldata  但是/root目录是超级用户的目录。因此mysql没有权限进入此目录

编辑客户端环境变量:

编辑/etc/profile.d/mysql.sh

编辑内容如下:

export PATH=$PATH/usr/local/mysql/bin

最后编辑/etc/my.cnf

在[mysqld]   下面添加一个mysql数据保存路径

datadir=/your/data/file/path

使用mysql命令 即可进入mysql。第一次登陆无需密码。登陆上去首先删除掉两个匿名用户

drop user ‘ ‘ @localhost;

drop  user ‘ ‘@127.0.0.1;

如果你的主机名是localhost 则第二条命令会报错。因为主机名是localhost的话,第二个匿名用户名字就是localhost.localdomain

因此执行

drop  user ‘ ‘ @localhost.localdomain

这些用户信息我们可以查看 有个mysql名字的数据库里面的表user。

use mysql

select User,Host,Password from user;

接下来给root设置密码:

update user set Password=PASSWORD(‘your passwd‘) where user=‘root‘;

如果mysql 安装服务器端和客户端都在同一机器上面,那么客户端将会基于mysql.sock 进行通讯

如果客户端服务器端,不在同一主机,则基于tcp/ip协议

mysql的客户端工具:

mysql

mysqldump

mysqladmin

mysqlimport

mysqlcheck

mysql 源码包安装

标签:二次   保存   linu   进入   charset   服务器   general   删除   html

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:https://www.cnblogs.com/SunshineLittleCat/p/8279674.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值