centos7 编译安装mysql

时间:2023-03-09 17:12:52
centos7 编译安装mysql

centos 7 安装mySql

1,准备mySql源码安装

  #wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.23.tar.gz

2:对于centos 7 安装mySql依赖项

# yum install gcc-c++ make cmake bison bison-devel ncurses-devel libaio-devel perl

# yum install perl-Data-Dumper

3:安装cmake,下载cmake-2.8.10.2.tar.gz,自行下载

# tar -zxv -f cmake-2.8.10.2.tar.gz

# cd cmake-2.8.10.2

# ./configure

# make

# make install

接下来配置cmake环境变量

# vi /etc/profile 》》在该文件中末尾追加下面两行

  PATH=/usr/local/cmake-2.8.10.2/bin:$PATH
        export PATH

# source /etc/profile  》》执行后修改生效

# echo $PATH    》》查看PATH值

4:安装mySql

创建安装路径和数据库保存路径

安装路径: mkdir -p /usr/lcoal/mysql

数据库路径:mkdir -p /usr/local/mysql/data

创建mysql用户和组

groupadd mysql

useradd -r -g mysql mysql

编译安装mysql

# tar -zxv -f mysql-5.5.29.tar.gz

# cd mysql-5.5.29

#

    cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
     -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
     -DDEFAULT_CHARSET=utf8 \
     -DDEFAULT_COLLATION=utf8_general_ci \
     -DWITH_MYISAM_STORAGE_ENGINE=1 \
     -DWITH_INNOBASE_STORAGE_ENGINE=1 \
     -DWITH_MEMORY_STORAGE_ENGINE=1 \
     -DWITH_READLINE=1 \
     -DENABLED_LOCAL_INFILE=1 \
     -DMYSQL_DATADIR=/mnt/db/mysql/data \
     -DMYSQL_USER=root \
     -DMYSQL_TCP_PORT=5001

# make

# make install

检查是否安装成功

到安装目录下 ls

bin COPYING data docs include INSTALL-BINARY lib man mysql-test README scripts share sql-bench support-files
有bin等以上文件的话,恭喜你已经成功安装了mysql。

将mysql的启动服务添加到系统服务中

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

cp:是否覆盖"/etc/my.cnf"? y

创建系统数据库的表

# cd /usr/local/mysql

# scripts/mysql_install_db --user=mysql

设置环境变量

# vi /root/.bash_profile

在修改PATH=$PATH:$HOME/bin为:
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib

# source /root/.bash_profile //使刚才的修改生效

手动启动mysql

[root@localhost ~]# cd /usr/local/mysql  [root@localhost mysql]# ./bin/mysqld_safe --user=mysql & //启动MySQL,但不能停止 mysqladmin -u root -p shutdown //此时root还没密码,所以为空值,提示输入密码时,直接回车即可。

将mysql的启动服务添加到系统服务中

[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysql

启动mysql

[root@localhost mysql]# service mysql start  Starting MySQL... ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid).

启动失败:  我这里是权限问题,先改变权限 [root@localhost mysql]# chown -R mysql:mysql /usr/local/mysql

接着启动服务器 [root@localhost mysql]# /etc/init.d/mysql start

修改MySQL的root用户的密码以及打开远程连接

[root@localhost mysql]# mysql -u root mysql

mysql> use mysql;  mysql> desc user;  mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root"; //为root添加远程连接的能力 mysql> update user set Password = password('123456') where User='root'; //设置root用户密码 mysql> select Host,User,Password from user where User='root';  mysql> flush privileges;  mysql> exit

重新登录

[root@localhost mysql]# mysql -u root -p  Enter password:123456

若还不能进行远程连接,关闭防火墙 [root@localhost]# /etc/rc.d/init.d/iptables stop