当前位置:Gxlcms > 数据库问题 > 源代码安装mysql

源代码安装mysql

时间:2021-07-01 10:21:17 帮助过:31人阅读

[root@fcy mysql]# ll /mnt/mysql/
total 39988
-rw-r--r--. 1 root root  5768373 Jul 20 19:25 cmake-2.8.10.2.tar.gz  #跨平台编译工具
-rw-r--r--. 1 root root 35174149 Jul 20 19:20 mysql-5.6.10.tar.gz    #mysql服务

        

        安装源代码安装所需环境

yum –disablerepo=\* --enablerepo=c6-mediagroupinstall “Development tools” –y

        

        解压缩到/usr/local/src

[root@fcymysql]# tar -zxvf cmake-2.8.10.2.tar.gz -C /usr/local/src
    ......(过程略)
[root@fcy mysql]# tar -zxvfmysql-5.6.10.tar.gz -C /usr/local/src
    ......(过程略)


        

        进入/usr/local/src/cmake目录,指定安装目录为/usr/local/

[root@fcy cmake-2.8.10.2]# ./configure--prefix=/usr/local/
    ......(过程略)
[root@fcy cmake-2.8.10.2]#make &&make install
    ......(过程略)

 

        进入/usr/local/mysql目录(安装之前记得卸载系统内的低版本mysql,不然会有冲突),进入后查看一下,发现有一个名称为INSTALL_SOURCE的文件,用vim编辑器打开,在3788行左右,有该版本mysql的安装过程

技术分享


        Setup的过程

技术分享        cmake编译mysql源代码(过程较耗时)

[root@fcy mysql-5.6.10]# cmake .
    ......(过程略)

        过程中会报错,安装ncursesncurses-devel即可

技术分享        

yum–disablerepo=\* --enablerepo=c6-media install ncurses ncurses-devel –y

        安装完成后删除解压的mysql代码包,重新解压缩在编译即可

[root@fcy mysql-5.6.10]#Make&& make install

        创建用户组musql

[root@fcymysql]# groupadd mysql

        创建用户mysql并加入到mysql

[root@fcymysql]# useradd -r -g mysql mysql

        进入到/usr/local/mysql目录,修改所有文件的用户和组为mysql

[root@fcy mysql]# chown -R mysql:mysql .
[root@fcy mysql]# ll
total 76
-rw-r--r--. 1 mysql mysql 17987 Jan 23  2013 COPYING
-rw-r--r--. 1 mysql mysql  7468 Jan 23  2013 INSTALL-BINARY
-rw-r--r--. 1 mysql mysql  2552 Jan 23  2013 README
drwxr-xr-x. 2 mysql mysql  4096 Jul 20 21:10bin
drwxr-xr-x. 4 mysql mysql  4096 Jul 20 21:09data
drwxr-xr-x. 2 mysql mysql  4096 Jul 20 21:09docs
drwxr-xr-x. 3 mysql mysql  4096 Jul 20 21:09include
drwxr-xr-x. 3 mysql mysql  4096 Jul 20 21:09lib
drwxr-xr-x. 4 mysql mysql  4096 Jul 20 21:10man
drwxr-xr-x. 10 mysql mysql  4096 Jul 20 21:10 mysql-test
drwxr-xr-x. 2 mysql mysql  4096 Jul 20 21:10scripts
drwxr-xr-x. 28 mysql mysql  4096 Jul 20 21:10 share
drwxr-xr-x. 4 mysql mysql  4096 Jul 20 21:10sql-bench
drwxr-xr-x.  3 mysql mysql 4096 Jul 20 21:10 support-files

        安装mysql默认数据库,并指定运行用户为mysql

[root@fcymysql]# scripts/mysql_install_db --user=mysql

        查看/usr/local/mysql/data目录生成的默认数据库

[root@fcy mysql]# ll data
total 110604
-rw-rw----. 1 mysql mysql 50331648 Jul 2022:12 ib_logfile0
-rw-rw----. 1 mysql mysql 50331648 Jul 2022:12 ib_logfile1
-rw-rw----. 1 mysql mysql 12582912 Jul 2022:12 ibdata1
drwxr-xr-x. 2 mysql mysql     4096 Jul 20 22:12 mysql
drwx------. 2 mysql mysql     4096 Jul 20 22:12 performance_schema
drwxr-xr-x.2 mysql mysql     4096 Jul 20 21:09 test

        修改/usr/local/mysql/下的所有者为root

[root@fcy mysql]# chown -R root .
[root@fcy mysql]# ll
total 80
-rw-r--r--. 1 root mysql 17987 Jan 23  2013COPYING
-rw-r--r--. 1 root mysql  7468 Jan 23  2013 INSTALL-BINARY
-rw-r--r--. 1 root mysql  2552 Jan 23  2013 README
drwxr-xr-x. 2 root mysql  4096 Jul 20 21:10bin
drwxr-xr-x. 5 root mysql  4096 Jul 20 22:12data
drwxr-xr-x. 2 root mysql  4096 Jul 20 21:09docs
drwxr-xr-x. 3 root mysql  4096 Jul 20 21:09include
drwxr-xr-x. 3 root mysql  4096 Jul 20 21:09lib
drwxr-xr-x. 4 root mysql  4096 Jul 20 21:10man
-rw-r--r--. 1 root root    943 Jul 20 22:12my.cnf
drwxr-xr-x. 10 root mysql  4096 Jul 20 21:10 mysql-test
drwxr-xr-x. 2 root mysql  4096 Jul 20 21:10scripts
drwxr-xr-x. 28 root mysql  4096 Jul 20 21:10 share
drwxr-xr-x. 4 root mysql  4096 Jul 20 21:10sql-bench
drwxr-xr-x.  3 root mysql 4096 Jul 20 21:10 support-files

        特别的将/usr/local/mysql/data目录的所有者改为mysql

[root@fcy mysql]# chown -R mysql data
[root@fcy mysql]# ll -d data
drwxr-xr-x. 5 mysql mysql 4096 Jul 20 22:12data

        拷贝mysql的主配置文件到/etc/my.cnf

[root@fcy mysql]# cpsupport-files/my-default.cnf /etc/my.cnf

        mysql的路径添加到系统变量

技术分享

        刷新脚本并显示

[root@fcy mysql]# source /etc/profile
[root@fcy mysql]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin

        拷贝启动控制脚本到/etc/init.d/ 并重命名为mysqld

[root@fcy mysql]# cpsupport-files/mysql.server /etc/init.d/mysqld

        添加mysql为开机自启动

[root@fcy mysql]# chkconfig --add mysqld
[root@fcy mysql]# chkconfig --list |grepmysqld
mysqld            0:off 1:off 2:on 3:on 4:on 5:on 6:off

        mysqllib库动态链接到系统lib

[root@fcy mysql]# touch/etc/ld.so.conf.d/mysql.conf
[root@fcy mysql]# echo"/usr/local/mysql/lib">>/etc/ld.so.conf.d/mysql

        刷新并查看

[root@fcy mysql]# ldconfig
[root@fcy mysql]# ldconfig -pv |grep mysql
         libmysqlclient_r.so.16(libc6) => /usr/lib/mysql/libmysqlclient_r.so.16
         libmysqlclient.so.16(libc6) => /usr/lib/mysql/libmysqlclient.so.16

        man手册的路径告诉系统,方便查找man的相关帮助信息

[root@fcy mysql]# echo "MANPATH/usr/local/mysql/man" >>/etc/man.config

        mysql的头文件库创建链接

[root@fcy include]# pwd
/usr/include
[root@fcy include]# ln -s/usr/local/mysql/include/ mysql
[root@fcy include]# ll |grep mysql
lrwxrwxrwx. 1 root root     25 Jul 20 22:51mysql -> /usr/local/mysql/include/

        启动mysql并检查端口3306是否启动

[root@fcy include]# service mysqld start
Starting MySQL. SUCCESS!
[root@fcy include]# netstat -tupln |grepmysqld
tcp       0      0 :::3306                     :::*              LISTEN      6496/mysqld

        mysql数据库设置登录密码(初始密码为空)

[root@fcy include]# mysqladmin -u root -ppassword ‘123456‘
Enter password:

        使用root账号登录并创建数据库

[root@fcy include]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 6
Server version: 5.6.10 Source distribution
 
Copyright (c) 2000, 2013, Oracle and/or itsaffiliates. All rights reserved.
 
Oracle is a registered trademark of OracleCorporation and/or its
affiliates. Other names may be trademarksof their respective
owners.
 
Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ toclear the current input statement.
 
mysql>

        创建数据库testdb

mysql> create databases testdb;
ERROR 1064 (42000): You have an error inyour SQL syntax; check the manual that corresponds to your MySQL server versionfor the right syntax to use near ‘databases testdb‘ at line 1
mysql> create database testdb;
Query OK, 1 row affected (0.00 sec)
 
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| testdb             |
+--------------------+
5rows in set (0.00 sec)

        查看文件中的数据库testdb

技术分享


4、总结

    注意源代码安装过程中的错误信息提示,一般都是缺少库文件或者安装工具,按照提示安装即可。

本文出自 “却邪水心泮” 博客,请务必保留此出处http://shmilyfl.blog.51cto.com/8897986/1676461

源代码安装mysql

标签:mysql 源代码

人气教程排行