Linux下源码安装mysql5.6-创新互联
1、下载mysql到/usr/local/src/
阳泉网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、响应式网站等网站项目制作,到程序开发,运营维护。创新互联建站于2013年创立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站。cd /usr/local/src/ wget http://distfiles.macports.org/cmake/cmake-2.8.12.tar.gz wget http://ftp.ntu.edu.tw/MySQL/Downloads/MySQL-5.6/mysql-5.6.35.tar.gz
2、编译安装cmake编译安装 mysql(最新版本都需要 cmake编译安装)
[root@server2 src]# tar -zxvfcmake-2.8.12.tar.gz [root@server2 src]# cd cmake-2.8.12 [root@server2 cmake-2.8.12]# ./bootstrapLog of errors: /usr/local/src/cmake-2.8.12/Bootstrap.cmk/cmake_bootstrap.log
解决办法:
安装LAMP所需要的环境
yum -y install make gcc* gcc-c++ zlib-devel libtool libtool-ltdllibtool-ltdl-devel bison ncurses-devel安装好所需要的环境包后,重新执行./bootstrap
[root@server2 cmake-2.8.12]# ./bootstrap [root@server2 cmake-2.8.12]# echo $? 0 [root@server2 cmake-2.8.12]# gmake [root@server2 cmake-2.8.12]# echo $? 0 [root@server2 cmake-2.8.12]# gmake install [root@server2 cmake-2.8.12]# echo $? 03、建立mysql用户
[root@server1 src]# groupadd mysql [root@server1 src]# useradd -g mysql -s/sbin/nologin -M mysql [root@server1 src]# id mysql uid=500(mysql) gid=500(mysql)groups=500(mysql)4、创建数据库存放的目录,并授权
[root@server1 mysql]# mkdir -p /data/mysql [root@server1 mysql]# chown -R mysql.mysql /data/mysql/ [root@server1 mysql]# chown -R mysql.mysql /usr/local/mysql/. //数据库安装路径5、编译安装mysql
[root@server2 src]# tar -zxvfmysql-5.6.35.tar.gz [root@server2 src]# cd mysql-5.6.35 [root@server2 mysql-5.6.35]# cmake \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql\ -DMYSQL_UNIX_ADDR=/data/mysql/mysql_3306.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EXTRA_CHARSETS=utf8,gbk \ -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ -DWITH_FEDERATED_STORAGE_ENGINE=1\ -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_EENGINE=1 \ -DWITH_READLINE=1 \ -DMYSQL_DATADIR=/data/mysql/ \ -DMYSQL_TCP_PORT=3306参数说明:
-DCMAKE_INSTALL_PREFIX #指定安装路径
-DMYSQL_UNIX_ADDR #数据库socket文件路径
-DDEFAULT_CHARSET #默认字符集
-DDEFAULT_COLLATION #默认编码
-DWITH_EXTRA_CHARSETS #额外编码
-DWITH_PERFSCHEMA_STORAGE_ENGINE #启用PERFSCHEMA引擎支持
-DWITH_FEDERATED_STORAGE_ENGINE #启用FEDERATED引擎支持
-DWITH_PARTITION_STORAGE_ENGINE #启用PARTITION引擎支持
-DWITH_ARCHIVE_STORAGE_EENGINE #启用ARCHIVE引擎支持
-DWITH_READLINE #使用readline功能
-DMYSQL_DATADIR #数据库数据存放目录
-DMYSQL_TCP_PORT #数据库TCP/IP端口
[root@server2 mysql-5.6.35]# echo $? 0 [root@server2 mysql-5.6.35]# make [root@server2 mysql-5.6.35]# echo $? 0 [root@server2 mysql-5.6.35]# make install [root@server2 mysql-5.6.35]# echo $? 0bin目录包含客户端工具及mysqld
data目录存放数据库数据文件及日志文件
docs目录包含info格式的用户手册
include 目录包含mysql头文件
lib目录包含相关lib库
mysql-test目录包含mysql的一些测试脚本文件
scripts目录存放mysql_install_db初始化文件
share目录存放各种支持文件,包括错误信息,语言编码支持,sql安装脚本等。
Sqlbench目录存放benchmark脚本
support-file目录存放mysql配置文件模板
6、复制mysql配置文件到/etc/my.cnf
[root@server2 mysql]# rm –f /etc/my.cnf [root@server2 mysql]# cd support-files/ [root@server2 support-files]# ls binary-configure magic mysqld_multi.server mysql-log-rotate mysql.server [root@server2 support-files]# cp /usr/local/mysql/support-files/ /etc/my.cnf编辑/etc/my.cnf配置文件,添加以下行
user = mysql //用户 basedir = /usr/local/mysql //基本目录 datadir = /data/mysql //数据库保存目录 port = 3306 //数据库端口 socket = /data/mysql/mysql_3306.sock log-error = /data/mysql/mysql_error.log //数据库错误日志文件 pid-file = /data/mysql/mysql.pid //数据库进程占用PID号 #内存使用限制 performance_schema_max_table_instances=400 table_definition_cache=400 table_open_cache=2567、初始化数据库
[root@server2 mysql]#/usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/data/mysql/ [root@server2 mysql]# echo $? 0初始化数据库常见的问题: 系统版本与数据库版本不一致,导致初始化数据库出错。
8、复制mysql启动脚本到/etc/init.d/mysqld
[root@server2 support-files]# cp /usr/local/mysql/support-files/mysql.server/etc/init.d/mysqld [root@server2 support-files]# chmod +x/etc/init.d/mysqld
9、加入开机自启动mysql服务
[root@server2 mysql]# chmod +x/etc/init.d/mysqld [root@server2 mysql]# chkconfig --addmysqld [root@server2 mysql]# chkconfig –level 35 mysqldon10、 启动mysql服务
[root@server2 mysql]# /etc/init.d/mysqldstart Starting MySQL. [ ]11、 msyql服务启动后,查看/data/mysql多了一些文件
[root@server2 mysql]# ls /data/mysql/ auto.cnf ib_logfile0 mysql mysql_error.log performance_schema ibdata1 ib_logfile1 mysql_3306.sock mysql.pid test [root@server2 mysql]# netstat -lnapt |grepmysqld tcp 0 0 :::3306 :::* LISTEN 3195/mysqld12、加入环境变量
[root@server2 ~]# vim/etc/profile.d/mysql.sh
#!/bin/bash exportPATH="$PATH:/usr/local/mysql/bin"[root@server2 ~]# source/etc/profile.d/mysql.sh
13、 新加的mysql没有设置root密码,可以通过下面命令设置root密码:
#/usr/local/mysql/bin/mysqladmin -S /data/mysql/mysql_3306.sock-u root password 'new-password'14、登录mysql
[root@server2 ~]# mysql
ERROR 2002 (HY000): Can'tconnect to local MySQL server through socket '/tmp/mysql.sock' (2)
问题:/tmp目录下没找到mysql.sock,解决办法有三种:
1) 将/data/mysql/mysql_3306.sock做软链接到/tmp/mysql.sock
ln -s /data/mysql/mysql_3306.sock/tmp/mysql.sock
2) 修改/etc/my.cnf,添加以下行
[client]
socket = /data/mysql/mysql_3306.sock
3) 执行以下命令指定socket连接文件,mysql –S /data/mysql/mysql_3306.sock
[root@server2 ~]# mysql -S/data/mysql/mysql_3306.sock另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
当前名称:Linux下源码安装mysql5.6-创新互联
分享地址:http://cdiso.cn/article/deehdg.html