网站建设知识
mysql数据库使用技巧_mysql安装详细教程
2025-07-22 11:14  点击:0

mysql数据库使用技巧_mysql安装详细教程。

mysql 5.6 on centos 6.5 安装

******************************************************************************

1.系统部分

******************************************************************************

--------1.最小化安装即可.

-------2 配置yum源

cd /etc/yum.repos.d

mv CentOS-base.repo CentOS-base.repo.old

wget mirrors.163/.help/CentOS6-base-163.repo

#mirrors.aliyun/repo/Centos-6.repo

yum makecache

检查可更新的rpm包

yum check-update

更新所有的rpm包

yum update

---3.关闭防火墙

chkconfig --level 123456 iptables off

service iptables stop

---5.修改hosts

echo "172.16.16.187 dba001.mysql dba001" >> /etc/hosts

---6.rz

yum install lrzsz -y

******************************************************************************

2.mysql安装部分

******************************************************************************

一:卸载旧版本

使用下面的命令检查是否安装有MySQL Server

rpm -qa | grep mysql

有的话通过下面的命令来卸载掉

rpm -e mysql //普通删除模式

rpm -e --nodeps mysql

则用该命令可以对其进行强力删除

yum remove mysql-libs

二:安装MySQL

安装编译代码需要的包

yum -y install gcc gcc-c++ autoconf automake zlib* libxml* \

ncurses-devel libtool-ltdl-devel* make cmake bison bison-devel libaio

--为mysql新建组和用户

groupadd mysql && useradd -g mysql mysql -s /sbin/nologin && passwd mysql

--3.设置用户的系统资源限制

#vi /etc/security/limits.conf

mysql soft nproc 2047

mysql hard nproc 16384

mysql soft nofile 1024

mysql hard nofile 65536

--4.编译安装

cd

mkdir /soft && cd /soft && rz

tar xvf mysql-5.6.25.tar.gz

cd mysql-5.6.25

编译安装

cmake \

-DCMAKE_INSTALL_PREFIX=/data/mysql \

-DMYSQL_DATADIR=/data/mysql/data \

-DSYSConFDIR=/etc \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DWITH_INNObase_STORAGE_ENGINE=1 \

-DWITH_MEMORY_STORAGE_ENGINE=1 \

-DWITH_READLINE=1 \

-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \

-DMYSQL_TCP_PORT=3306 \

-DENABLED_LOCAL_INFILE=1 \

-DWITH_PARTITION_STORAGE_ENGINE=1 \

-DEXTRA_CHARSETS=all \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci

-no-warn-unused-cli

############### 以下为解释 ###################################

-DCMAKE_INSTALL_PREFIX= 指向mysql安装目录

-DINSTALL_SBINDIR=sbin 指向可执行文件目录,即mysqld目录(prefix/sbin)

-DMYSQL_DATADIR=/var/lib/mysql 指向mysql数据文件目录(/var/lib/mysql)

-DSYSConFDIR=/etc/mysql 指向mysql配置文件目录(/etc/mysql)

-DINSTALL_PLUGINDIR=lib/mysql/plugin 指向插件目录(prefix/lib/mysql/plugin)

-DINSTALL_MANDIR=share/man 指向man文档目录(prefix/share/man)

-DINSTALL_SHAREDIR=share 指向aclocal/mysql.m4安装目录(prefix/share)

-DINSTALL_LIBDIR=lib/mysql 指向对象代码库目录(prefix/lib/mysql)

-DINSTALL_INCLUDEDIR=include/mysql 指向头文件目录(prefix/include/mysql)

-DINSTALL_INFODIR=share/info 指向info文档存放目录(prefix/share/info)

prefix官方推荐设为/usr

Storage Engine相关

类型csv,myisam,myisammrg,heap,innobase,archive,blackhole

若想启用某个引擎的支持:-DWITH__STORAGE_ENGINE=1

如:

-DWITH_INNObase_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

若想禁用某个引擎的支持:-DWITHOUT__STORAGE_ENGINE=1

如:

-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1

-DWITHOUT_FEDERATED_STORAGE_ENGINE=1

-DWITHOUT_PARTITION_STORAGE_ENGINE=1

Library相关

-DWITH_READLINE=1 启用readline库支持(提供可编辑的命令行)

-DWITH_SSL=system 启用ssl库支持(安全套接层)

-DWITH_ZLIB=system 启用libz库支持(zib、gzib相关)

-DWTIH_LIBWRAP=0 禁用libwrap库(实现了通用TCP包装的功能,为网络服务守护进程使用)

-DMYSQL_TCP_PORT=3306 指定TCP端口为3306

-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock 指定mysql.sock路径

-DENABLED_LOCAL_INFILE=1 启用本地数据导入支持

-DEXTRA_CHARSETS=all 启用额外的字符集类型(默认为all)

-DDEFAULT_CHARSET=utf8 指定默认的字符集为utf8

-DDEFAULT_COLLATION=utf8_general_ci 设定默认排序规则(utf8_general_ci快速/utf8_unicode_ci准确)

-DWITH_EMBEDDED_SERVER=1 编译嵌入式服务器支持

-DMYSQL_USER=mysql 指定mysql用户(默认为mysql)

-DWITH_DEBUG=0 禁用debug(默认为禁用)

-DENABLE_PROFILING=0 禁用Profiling分析(默认为开启)

-DWITH_COMMENT='string' 一个关于编译环境的描述性注释

############### 上为解释 ###################################

make

make install

整个过程需要30分钟左右.

三:配置MySQL

1.新建数据文件、临时文件,修改权限-----根据my.cnf里面的目录逐个创建

mkdir -p /data/mysql

mkdir /data/mysql/mysql_logs/{error_log,slow_query_log,bin_log} -p

--2.修改参数

#rm -rf /etc/my.cnf;

vi /data/mysql/my.cnf

--3.链接文件

##链接文件

ln -fs /data/mysql/my.cnf /etc/my.cnf; ll /etc/my.cnf

lrwxrwxrwx. 1 root root 23 Nov 18 17:30 /etc/my.cnf -> /data/mysql/my.cnf

--4.修改权限

chown -R mysql /data/mysql

chgrp -R mysql /data/mysql

3.初始化配置

cd /data/mysql/scripts

#Note

./mysql_install_db --defaults-file=/etc/my.cnf --user=mysql --basedir=/data/mysql/ --datadir=/data/mysql/data/

./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql_01

#---6.0 修改文件权限

chown -R mysql /data/mysql; chgrp -R mysql /data/mysql

注:在启动MySQL服务时,会按照一定次序搜索my.cnf,

先在/etc目录下找,找不到则会搜索"$basedir/my.cnf",

在本例中就是 /data/mysql/my.cnf,这是新版MySQL的配置文件的默认位置!

注意:在CentOS 6.4版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf

,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,

造成无法启动。

#mv /etc/my.cnf /etc/my.cnfbak

4.启动MySQL

添加服务,拷贝服务脚本到init.d目录,并设置开机启动

cd /data/mysql/

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

chkconfig mysql on

service mysql start --启动MySQL

5.配置mysql用户

MySQL启动成功后,root默认没有密码,我们需要设置root密码。

5.1修改/etc/profile文件,在文件末尾添加

#vi /etc/profile

PATH=/data/mysql/bin:$PATH

export PATH

#source /etc/profile

现在,我们可以在终端内直接输入mysql进入,mysql的环境了

执行下面的命令修改root密码

--5.2修改mysql管理员密码

#/usr/local/mysql/bin/mysqladmin -u root password password

--5.3 登录mysql

# mysql -uroot -ppassword

--5.3 设置root用户可以远程访问

--方法1:授权法

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

select host,user,password from user;

--方法2:修改表

mysql> update user set host = '% ' where user = 'root ';

mysql> flush privileges;

------------------------------------------------------------------------------------------------------------------------------------

启动MySql提示:The server quit without updating PID file(…)失败

[java] view plaincopy

[root@rekfan mysql]# service mysql restart

MySQL server PID file could not be found![失败]

Starting MySQL...The server quit without updating PID file (/usr/local/mysql/data/rekfan.pid).[失败]

1.可能是/usr/local/MySQL/data/rekfan.pid文件没有写的权限

解决方法 :给予权限,执行 “chown -R mysql:mysql /var/data” “chmod -R 755 /usr/local/mysql/data” 然后重新启动mysqld!

2.可能进程里已经存在mysql进程

解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重新启动mysqld!

3.可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。

解决方法:去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。本人就是使用第三条方法解决的 !blog.rekfan/?p=186

4.mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)。

解决方法:请在[mysqld]下设置这一行:datadir = /usr/local/mysql/data

5.skip-federated字段问题

解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。

6.错误日志目录不存在

解决方法:使用“chown” “chmod”命令赋予mysql所有者及权限

7.selinux惹的祸,如果是centos系统,默认会开启selinux

解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。