Linux安装mysql mysql5.5.40

时间:2022-07-11 15:19:37

一、    操作系统与软件

操作系统及版本

Centos 6.4

依赖包

gcc、gcc-c++、cmake、ncurses-devel

下载目录

/opt

Mysql安装目录

/usr/local/mysql/

二、    准备工作

操作系统

Centos

Ubuntu

安装cmake

yum install cmake

sudo apt-get install cmake

安装bison

yum install bison

sudo apt-get install bison

安装gcc

yum install -y gcc

sudo apt-get install gcc

安装gcc-c++

yum install -y gcc-c++

sudo apt-get install gcc-c++

安装ncurses-devel

yum install ncurses-devel

sudo apt-get install ncurses-devel

说明:(mysql5.5以后是通过cmake来编译的)

三、    服务安装步骤

根据服务所需安装包的先后顺序,分步骤填写下表,操作步骤主要包括:

a.软件包安装与编译                            b.配置文件修改                           c. 权限设置

d.初始化数据库                                       e.启动与停止命令                      f.验证服务正常

g.开机自动启动                 h.环境变量配置           i.结束进程与启动

步骤a

软件包安装与编译

安装目录

/opt

安装步骤

  1. 下载安装程序

wget http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.40.tar.gz

  1. 解压

tar zxvf mysql-5.5.40.tar.gz

  1. 进入目录

cd /opt/mysql-5.5.40

  1. 编译安装

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql/ -DMYSQL_DATADIR=/opt/mysql/data/ -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_TCP_PORT=3306 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DMYSQL_USER=mysql -DWITH_DEBUG=0 -DSYSCONFDIR=/etc

5.说明:成功安装标记如下

CMake Warning:

Manually-specified variables were not used by the project:

MYSQL_USER

-- Build files have been written to: /opt/mysql-5.5.40

6.make

7.make install

步骤b

配置文件修改

安装步骤

1、安装好mysql后第一步是创建全局配置文件 my.cnf 并调整相关参数,如端口、数据文件路径、缓存大小等:

sudo cp support-files/my-medium.cnf /etc/my.cnf

2、创建mysql启动、停止管理脚本:

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

【注:cp support-files/mysql.server /etc/init.d/mysqld 这样更好,后面对应修改】

步骤3

权限设置

安装步骤

chmod 755 /etc/init.d/mysqld

步骤4

初始化数据库

目录

/opt/mysql-5.5.40

配置步骤

1. groupadd mysql

2. useradd -g mysql mysql

3. sh ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/opt/mysql/data/

注:#basedir mysql安装路径 datadir 数据库文件储存路径

4.说明,安装成功标记:

Installing MySQL system tables...

OK

Filling help tables...

OK

步骤5

启动与停止命令

安装目录

/opt/mysql-5.5.40

配置步骤

1、启动与停止命令

/etc/init.d/mysqld start

/etc/init.d/mysqld stop

/etc/init.d/mysqld restart 重启

步骤6

验证服务正常

命令

1、进入安装目录

cd /usr/local/mysql/bin

2、连接登陆

./mysql -u root –p

密码为空

3.修改密码

use mysql;

update user set password=password('admin') where user='root';

这步就更新了密码

第三步:

flush privileges;刷新权限.

quit

4.建立软连接

ln -s /usr/local/mysql/bin/mysql /usr/bin

5.mysql -u root -p

输入密码即可

  1. 查看进程

pstree

是否有mysqld_safe ,有,代表OK,成功

★-----------------------------------------★

步骤7

开机自动启动

命令

完整步骤:

1、support-files/mysql.server /etc/init.d/mysqld

2、chmod 755 /etc/init.d/mysqld

3、chkconfig mysqld on

根据前面的配置,这一步实际只需输入chkconfig mysqld on即可

步骤8

环境变量配置

配置内容

为了方便,将mysql 的bin目录加到PATH中,在/etc/profile中加入myslq/bin,顺便增加两个别名方便操作:

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

开关客户端

alias mysql_start="mysqld_safe&"

alias mysql_stop="mysqladmin -uroot -p shutdown"

步骤9

结束进程与启动

命令

  1. 输入命令

pstree -p

  1. 结束相应的pid程序

Kill -9 进程pid号

【注:要先kill 守护进程,再kill进程。如果直接kill进程,mysql进程会自动生成新的进程】

  1. 启动

/etc/init.d/mysqld start

四、    常见错误解决

1、ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

解决方案:服务没启动     /etc/init.d/mysqld start

2、在整个安装过程中,cmake安装不成功,就是缺少必要的最前面的依赖包,如果全部安装了,还cmake安装不成功。

就rm –rf mysql解压的那个包,重新编译安装cmake一遍,即可。

3、输入mysql –u root –p 如果提示-bash: mysql: command not found

解决:这是由于系统默认会查找/usr/bin下的命令,建立软连接即可

ln -s /usr/local/mysql/bin/mysql /usr/bin

五、    参考资料与网址

  1. http://www.cnblogs.com/bluewelkin/p/4233459.html
  2. http://www.linuxidc.com/Linux/2011-04/35268.htm
  3. http://www.itpub.net/forum.php?mod=viewthread&tid=1811682&highlight=

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

通过如上配置,学会了:

1、mysql -u root -p =====================命令默认位置在/usr/bin下 建立软连接即可

2、守护进程的作用,kill掉子进程也没事,自动生成新的。

3、mysql忘记密码也没事 http://www.cnblogs.com/bluewelkin/p/3902518.html

在mysql的全局配置中加入一句话即可skip-grant-tables

4、环境变量开启别名模式

5、[root@IOT-WXUNI-Comm-A etc]# /home/wkubuntu/named/sbin/named: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory 【出现这个错误,20150320】

解决方案:20150425

http://www.cnblogs.com/bluewelkin/p/4353152.html

6、mysql的报错日志 看配置文件 /etc/my.cnf 看知

7、[root@iZ25pktdyflZ mysql-5.5.40]# /etc/init.d/mysqld start
Starting MySQL..The server quit without updating PID file ([FAILED]/mysql/iZ25pktdyflZ.pid).

解决方案【2015年0512】

就是路径的问题: 再次在命令行输入即可 sh ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/var/lib/mysql【最后这个datadir这个地方修改为和/etc/my.cnf一样】

成功解决

[Mysql 报错信息路径 /var/log/mysqld.log]

解决方案二:【没有这个文件,建立这个文件】

[root@iZ25pl8wzd7Z mysql-5.5.40]# /etc/init.d/mysqld start

Starting MySQL.The server quit without updating PID file (/home/wkubuntu/mysql/data/iZ25pl8wzd7Z.pid).                                                          [FAILED]

这个错误的解决方案如下

sh ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/home/wkubuntu/mysql/data

8、忘记mysql密码,修改MySQL的登录设置: 

# vi /etc/my.cnf 
在[mysqld]的段中加上一句:skip-grant-tables
例如:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-name-resolve
skip-grant-tables
保存并且退出vi。
2.重新启动mysqld
# /etc/init.d/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
3.登录并修改MySQL的root密码  mysql -uroot -p 密码为空
4、再把my.cnf去掉那一句 9、北京服务器 /home/niot/mysql/bin/mysql -u root -p
/home/niot/mysql/bin/mysqld_safe --pid-file=/home/niot/mysql/mysql.pid --user=niot --datadir=/home/niot/mysql/data &
sudo /home/niot/named/sbin/named -c /home/niot/named/etc/named.conf -n 1 & mysql 进程 ps -ef|grep mysql  /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/home/mysql/data/NIOT-SVR2.err --pid-file=/home/mysql/data/NIOT-SVR2.pid --socket=/tmp/mysql.sock --port=3306