mysql 数据库的安装之一 源码安装

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 数据库的安装之一 源码安装相关的知识,希望对你有一定的参考价值。

mysql是一个关系型数据库管理系统由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 应用软件之一.

mysql 数据库安装方式有多种,本文介绍源码安装

系统环境:

Linux mysql 2.6.32-642.6.1.el6.x86_64 #1 SMP Wed Oct 5 00:36:12 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

[[email protected] ~]# cat /etc/redhat-release 

CentOS release 6.8 (Final)

  1. 创建用户和组

groupadd mysql

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

[[email protected] ~]# id mysql

uid=502(mysql) gid=502(mysql) 组=502(mysql)

2.解压源码并编译安装

tar xf mysql-5.1.72.tar.gz

cd mysql-5.1.72

#编译

./configure \

--prefix=/application/mysql5.1.72 \

--with-unix-socket-path=/application/mysql5.1.72/tmp/mysql.sock \

--localstatedir=/application/mysql5.1.72/data \

--enable-assembler \

--enable-thread-safe-client \

--with-mysqld-user=mysql \

--with-big-tables \

--without-debug \

--with-pthread \

--enable-assembler \

--with-extra-charsets=complex \

--with-readline \

--with-ssl \

--with-embedded-server \

--enable-local-infile \

--with-plugins=partition,innobase \

--with-mysqld-ldflags=-all-static \

--with-client-ldflags=-all-static 


make && make install

3.做软链接

ln -s /application/mysql5.1.72/ /application/mysql

ll /application/mysql

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

重要:如果mysql不是和apache部署在同一台电脑上,到此结束。

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

4.数据库的初始化

cd /tools/mysql-5.1.72

 ls support-files/my*.cnf           #显示mysql 配置文件

cd support-files

cp my-small.cnf /etc/my.cnf         #copy 配置文件


mkdir -p /application/mysql/data    #  建立mysql数据文件存放目录


chown -R mysql:mysql /application/mysql  #授权Mysql 用户能访问mysql 的安装目录


ll /application/mysql/data


/application/mysql/bin/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data --user=mysql

#出现2个OK,表示成功


ll /application/mysql/data


#######################################

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

vim /etc/init.d/mysqld

basedir=/application/mysql                          


datadir=/application/mysql/data                    

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

#######################################

5.copy启动文件

cd /tools/mysql-5.1.72/support-files

cp mysql.server  /etc/init.d/mysqld


6.加入开机自启动

chkconfig mysqld on

启动mysql数据库

/etc/init.d/mysqld start   (/application/mysql/bin/mysqld_safe &     这个命令也可以启动mysql)

 如果启动失败则执行下面命令:

ps -ef |grep mysql   #查看Mysql 进程是否在运行,如果在的话,启动前要Kill  或者  mysqladmin shutdown

然后再启动mysql

[[email protected] ~]#mysql

出现下面错误:

#-bash:mysql:command not found

mysql 对应的路径不在path目录下面

使用全路径进入mysql:

/application/mysql/bin/mysql

或者在文件最后加上:

vi /etc/profile

PATH="/application/mysql/bin/:$PATH"

[[email protected] ~]#. /etc/profile   #使之生效


#设置密码,不要在mysql>  下面设置密码,在#后面设置密码

/application/mysql/bin/mysqladmin -u  root password ‘passwd123‘

#重新登录,输入用户名和密码


mysql -u root -p

passwd123


7.数据优化:

select version();         #查看数据库版本

select user();            #查看当前的用户

mysql> show databases;    #查看数据库

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| test               |

+--------------------+


mysql>drop database test; #安全设置,删除没有用的数据库

最终优化为:

mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

+--------------------+

mysql> select user,host from mysql.user;  #查询表中的用户

+------+-----------+

| user | host      |

+------+-----------+

| root | 127.0.0.1 |

|      | localhost |

| root | localhost |

|      | weblamp   |

| root | weblamp   |

+------+-----------+

drop user ""@weblamp;  #删除主机名是weblamp,用户名=""。

mysql> drop user ""@localhost;

mysql> drop user "root"@weblamp;

最终优化为:

mysql> select user,host from mysql.user;

+------+-----------+

| user | host      |

+------+-----------+

| root | 127.0.0.1 |

| root | localhost |

+------+-----------+


如果删除不了,就使用delete 删除。


delete from mysql.user where(host="weblamp");

最后刷新:

flush privileges;


#如果忘记登录密码,可以使用这个跳过登录密码的输入

/application/mysql/bin/mysqld_safe --skip-grant-table &  

#修改密码

mysql>update mysql.user set password=PASSWORD("oldboy123") where host=‘localhost‘ and  user=‘root‘;

 flush privileges;


[[email protected] ~]#lsof -i :3306  #查看3306端口现在运行的情况


#查看mysql 的日志

cat /application/mysql/data/oldboy.err  


本文出自 “知识改变命运” 博客,请务必保留此出处http://ahtornado.blog.51cto.com/4826737/1891259

以上是关于mysql 数据库的安装之一 源码安装的主要内容,如果未能解决你的问题,请参考以下文章

Centos 7.0 编译安装LAMP(Linxu+apache+mysql+php)之源码安装Mysql

Linux安装MySQL(源码安装)

编译安装MySQL-5.7.13

LAMP架构介绍以及Apache源码安装

LAMP架构介绍以及Apache源码安装

Centos 7.0 编译安装LAMP(Linxu+apache+mysql+php)之源码安装Apache