linux下mysql安装(通过cmake)
cmake安装mysql

mysql 最新的版本都需要cmake编译安装,估计以后的版本也会采用这种方式,所以特地记录一下安装步骤及过程,以供参考。
注意:此安装是默认centos下已经安装了最新工具包,比如GNU make, GCC, Perl, libncurses5-dev,如果在编译安装过程中发现有缺失的工具包,先yum install 单独下载安装再继续即可。
一. Centos 用wget 下载需要的软件,保存到目录/usr/local/src/ 下wget/get/Downloads/MySQL-5.5/mysql-5.5.11.tar.gz/from// 6903148145999wget /files/v2.8/cmake-2.8.4.tar.gzwget /gnu/bison/bison-2.4.3.tar.gz二. 安装cmakecd /usr/local/srctar zxvf cmake-2.8.4.tar.gzcd cmake-2.8.4./bootstrapgmakegmake installcd ../tar zxvf bison-2.4.3.tar.gzcd bison-2.4.3./configuremakemake installcd ../三. 编译安装MySQL 5.5.11/usr/sbin/groupadd mysql/usr/sbin/useradd -g mysql mysqltar xvf mysql-5.5.11.tar.gzcd mysql-5.5.11/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \-DWITH_MYISAM_STORAGE_ENGINE=1 \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_MEMORY_STORAGE_ENGINE=1 \-DWITH_READLINE=1 \-DENABLED_LOCAL_INFILE=1 \-DMYSQL_DATADIR=/var/mysql/data \-DMYSQL_USER=mysqlmakemake installchmod +w /usr/local/mysqlchown -R mysql:mysql /usr/local/mysqlln -s /usr/local/mysql/lib/libmysqlclient.so.16 /usr/lib/libmysqlclient.so.16mkdir -p /var/mysql/mkdir -p /var/mysql/data/mkdir -p /var/mysql/log/chown -R mysql:mysql /var/mysql/cdsupport-files/f /var/mysql/fcp mysql.server /etc/init.d/mysqld四. 配置启动MySQL 5.5.111. 若有需要请先修改mysql 的配置fvi /var/mysql/f2. mysql 初始化安装/usr/local/mysql/scripts/mysql_install_db \--defaults-file=/var/mysql/f \--basedir=/usr/local/mysql \--datadir=/var/mysql/data \--user=mysql3. 将mysql 加入开机启动chmod +x /etc/init.d/mysqldvi /etc/init.d/mysqld (编辑此文件,查找并修改以下变量内容:)basedir=/usr/local/mysqldatadir=/var/mysql/datachkconfig --add mysqldchkconfig --level 345 mysqld on4. 启动mysqlservice mysqld start远程连接MYSQL1mysql> grant all privileges on *.* to username@"%" identified by "password";2mysql> FLUSH PRIVILEGES;这里的*.*表示所有库中的所有表username表示你的用户名% 表示允许任何远程服务器连接mysql,password表示你的密码。
mysql5.7.4数据库源码安装20150520

mysql数据库源码安装1、安装环境系统: Red Hat Enterprise Linux Server release 6.4 (Santiago)64位CUP 4核内存8G硬盘空间160G系统分区 /boot 300M /swap 4096M /home 102400M把剩余全部空间分给根分区。
mysql源码包版本:mysql-5.7.4-m14.tar.gz2 、升级cmake到2.8.9版本查看系统cmake 版本rpm -qa cmake 或cmake --version[root@gztestC118 home]# rpm -qa cmakecmake-2.6.4-5.el6.x86_64[root@gztestC118 home]# cmake --versioncmake version 2.6-patch 4[root@gztestC118 home]#rpm -e cmake-2.6.4-5.el6.x86_64 删除旧的cmake[root@gztestC118 home]# tar –zxvf cmake-2.8.9.tar.gz[root@gztestC118 home]# cd cmake-2.8.9[root@gztestC118 home]./configure[root@gztestC118 home]make &&make install[root@gztestC118 ~]# cmake –version 检查新版本号cmake version 2.8.9 升级成功。
3、拷贝好RHEL系统镜像进入目录Packages[root@gztestC117 Packages]# ll *curses* 把下面安装包安装下。
-r--r--r--. 1 root root 274016 5月 12 06:16 ncurses-5.7-3.20090208.el6.x86_64.rpm-r--r--r--. 1 root root 62400 5月 12 06:16 ncurses-base-5.7-3.20090208.el6.x86_64.rpm-r--r--r--. 1 root root 656772 5月 12 06:16 ncurses-devel-5.7-3.20090208.el6.i686.rpm-r--r--r--. 1 root root 657088 5月 12 06:16 ncurses-devel-5.7-3.20090208.el6.x86_64.rpm-r--r--r--. 1 root root 256596 5月 12 06:16 ncurses-libs-5.7-3.20090208.el6.i686.rpm-r--r--r--. 1 root root 251756 5月 12 06:16 ncurses-libs-5.7-3.20090208.el6.x86_64.rpm-r--r--r--. 1 root root 559700 5月 12 06:16 ncurses-term-5.7-3.20090208.el6.x86_64.rpm [root@gztestC117 Packages]# rpm -ivh ncurses-5.7-3.20090208.el6.x86_64.rpmwarning: ncurses-5.7-3.20090208.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEYPreparing... ########################################### [100%] package ncurses-5.7-3.20090208.el6.x86_64 is already installed[root@gztestC117 Packages]# rpm -ivh ncurses-base-5.7-3.20090208.el6.x86_64.rpmwarning: ncurses-base-5.7-3.20090208.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEYPreparing... ########################################### [100%] package ncurses-base-5.7-3.20090208.el6.x86_64 is already installed[root@gztestC117 Packages]# rpm -ivh ncurses-devel-5.7-3.20090208.el6.x86_64.rpmwarning: ncurses-devel-5.7-3.20090208.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEYPreparing... ########################################### [100%] 1:ncurses-devel ########################################### [100%] [root@gztestC117 Packages]# rpm -ivh ncurses-libs-5.7-3.20090208.el6.x86_64.rpmwarning: ncurses-libs-5.7-3.20090208.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key IDfd431d51: NOKEYPreparing... ########################################### [100%] package ncurses-libs-5.7-3.20090208.el6.x86_64 is already installed[root@gztestC117 Packages]# rpm -ivh ncurses-term-5.7-3.20090208.el6.x86_64.rpmwarning: ncurses-term-5.7-3.20090208.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEYPreparing... ########################################### [100%] 1:ncurses-term ########################################### [100%]利用新安装的cmake指定mysql安装路径解压mysql包,进入mysql源目录cmake -DCMAKE_INSTALL_PREFIX=/home/mysqlinstall/mysql如果未安装curses相关包则会报错CMake Error at cmake/readline.cmake:64 (MESSAGE):Curses library not found. Please install appropriate package。
linux下MySQL使用方法

linux下MySQL使用方法===============================================================一、引言想使用Linux已经很长时间了,由于没有硬性任务一直也没有系统学习,近日由于工作需要必须使用Linux下的MySQL。
本以为有Windows下使用SQL Server的经验,觉得在Linux下安装MySql应该是易如反掌的事,可在真正安装和使用MySQL时走了很多弯路,遇见很多问题,毕竟Linux 和Windows本身就有很大区别。
为了让和我一样的初学者在学习的过程中少走弯路,尽快入门,写了此文,希望对您有所帮助。
本文的Linux环境是 Red Hat 9.0,MySQL是4.0.16。
二、安装Mysql1、下载MySQL的安装文件安装MySQL需要下面两个文件:MySQL-server-4.0.16-0.i386.rpmMySQL-client-4.0.16-0.i386.rpm下载地址为:/downloads/mysql-4.0.html,打开此网页,下拉网页找到“Linux x86 RPM downloads”项,找到“Server”和“Client programs”项,下载需要的上述两个rpm文件。
2、安装MySQLrpm文件是Red Hat公司开发的软件安装包,rpm可让Linux在安装软件包时免除许多复杂的手续。
该命令在安装时常用的参数是–ivh ,其中i表示将安装指定的rmp软件包,V表示安装时的详细信息,h表示在安装期间出现“#”符号来显示目前的安装过程。
这个符号将持续到安装完成后才停止。
1)安装服务器端在有两个rmp文件的目录下运行如下命令:[root@test1 local]# rpm -ivh MySQL-server-4.0.16-0.i386.rpm显示如下信息。
warning: MySQL-server-4.0.16-0.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5 Preparing... ########################################### [100%]1:MySQL-server ########################################### [100%] 。
linux上mysql安装以及数据的导入导出操作

先检查系统是否装上了mysql,如果有将其卸载掉rpm -qa | grep mysql注意mysql的大小写,大小写都有可能rpm -e --nodeps mysql*一定要用--nodeps卸载,不检查依赖性关系.创建用户mysqlgroupadd mysqluseradd -g mysql mysqlpasswd mysql在/usr/local下建立 mysql 文件夹然后将安装文件上传到服务器上,这里用的是tar.gz的文件,也有rpm包可以用,但是rpm 包不能指定安装目录,故不采用tar zxvf mysql-5.0.45.tar.gzcd mysql-5.0.45./configure --prefix=/usr/local/mysql --with-charset=gb2312指定安装目录为/usr/local/mysql,字符集为gb2312makemake install安装完成重启cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqldcopy启动的mysqld文件下面确保mysql用户有相应的权限chmod 700 /etc/init.d/mysqldcd /usr/localchmod 750 mysql -Rchgrp mysql mysql -Rchown mysql mysql/var -Rcd /usr/local/mysql/libexeccp mysqld mysqld.oldstrip mysqldchkconfig --add mysqldchkconfig --level 345 mysqld onservice mysqld start启动服务/usr/local/mysql/bin/mysqld_safe看看mysql能否正常工作mysql -uroot mysql或者 netstat -atln看看有没有3306的端口打开,(如果mysqld不能启动,看看/web/mysql/var下的出错日志,一般都是目录权限没有设置好的问题)哈哈,没有问题.启动正常./usr/local/mysql/bin/mysql_install_db --user=mysql创建数据库mysql,用户为mysql接下来做个链接,觉得方便一些.(做链接前确保用户PATH路径里有sbin)ln -s /usr/local/mysql/bin/mysql /sbin/mysqlln -s /usr/local/mysql/bin/mysqladmin /sbin/mysqladmin好了,没有什么问题就重新启动一下.接下来做一些更好的设置吧.让mysql更好的运行吧.cp /usr/local/mysql/share/mysql/f /etc/fcopy配置文件,有large,medium,small三个环境下的,根据机器性能选择,如果负荷比较大,可修改里面的一些变量的内存使用值设置自动启动mysql设定开机自启动mysql#cd /usr/local/mysql/share/mysql#cp mysql.server /etc/init.d/mysql#cd /etc/rc3.d#ln -s ../init.d/mysql S100mysql#ln -s ../init.d/mysql K100mysql#cd /etc/rc5.d#ln -s ../init.d/mysql S100mysql#ln -s ../init.d/mysql K100mysql#cd ../init.d#chmod 755 mysql重新启动,看mysql是否正常自动启动.mysqladmin -uroot password "888888"设定root账户的密码mysql -uroot -p输入你设置的密码mysql>use mysql;mysql>delete from user where password=""; #删除用于本机匿名连接的空密码帐号mysql>update user set host = '%' where host = 'localhost';设置远程用户登录(否则只有localhost可以操作数据库)mysql>flush privileges;mysql>quit一切正常.Mysql数据导出和导入操作把MySQL数据库目录中的dz数据库备份到/home/dz_bak.sql ,然后再新建一个数据库dzbak,最后把/home/dz_bak.sql 导入到数据库dzbak中。
如何在Linux系统中安装数据库

如何在Linux系统中安装数据库在Linux系统中,安装数据库是一项重要且常见的任务。
数据库是用于存储、管理和访问数据的软件系统,它在各种应用领域中都扮演着关键角色。
本文将介绍如何在Linux系统中安装数据库,并提供适当的步骤和指导。
一、选择适合的数据库在开始安装之前,我们需要选择适合我们需求的数据库。
常见的Linux数据库包括MySQL、PostgreSQL和MongoDB等。
根据具体情况,选择最适合您项目需求的数据库软件。
二、安装依赖在安装数据库之前,我们需要确保系统中已经安装了一些必要的依赖项。
这些依赖项通常包括C/C++编译器、开发工具包以及其他必要的库文件。
您可以通过系统包管理器来安装这些依赖项。
以下是一些常见的依赖项的安装命令示例:对于Debian/Ubuntu系统:```sudo apt-get updatesudo apt-get install build-essential```对于CentOS/Fedora系统:sudo yum updatesudo yum groupinstall "Development Tools"```三、下载和安装数据库软件一旦我们安装好了依赖项,我们可以开始下载和安装数据库软件。
在此我们以MySQL为例,介绍如何在Linux系统中安装。
1. 首先,我们需要访问MySQL的官方网站,下载适用于Linux系统的MySQL安装包。
您可以在MySQL官方网站的下载页面找到适合您系统的安装包。
2. 下载完成后,将安装包移动到指定目录。
我们可以使用以下命令来解压和移动文件:```tar -zxvf mysql-VERSION.tar.gzsudo mv mysql-VERSION /usr/local/mysql```请注意将"VERSION"替换为您下载的文件的实际版本号。
3. 接下来,我们需要创建MySQL的相关用户和组,以及设置权限。
Linux下安装及配置MySQL详细过程(自己实践总结)

Red Hat Linux下安装及配置MySQL的详细教程大致思路如下:1.下载所需的安装包(Linux下用wget下载,笔者在window下下载的,用XSHELL命令RZ上传到Linux中)2.安装MySQL3.创建新用户并授权安装及配置的详细步骤如下:第一步:检测系统版本信息Linux命令: cat /proc/versionLinux version 2.6.32-220.el6.i686 (mockbuild@) (gcc version 4.4.5 20110214 (Red Hat 4.4.5-6) (GCC) ) #1 SMP Wed Nov 9 08:02:18 EST 2011当前Linux版本为RedHat 4.4.5-6(为内核版本)Linux命令:cat /etc/issueRed Hat Enterprise Linux Server release 6.2 (Santiago)Kernel \r on an \mLinux命令: uname -a 或getconf LONG_BITLinux localhost.localdomain 2.6.32-220.el6.i686 #1 SMP Wed Nov 9 08:02:18 EST 2011 i686 i686 i386 GNU/Linux可以看到当前系统为32位的(而64位系统会有x64字符串显示出来)。
第二步:根据Linux系统的环境,下载mysql Community Server官方下载地址: /downloads/mysql/可以选择【Linux-Generic】,下载对应的RMP包.由于当前系统为redhat(64位),所以直接选择Oracle &Red Hat Linux 4 & 5。
Mysql安装包有很多,作用也不同,大多数情况下只需要安装MySQL-Server和MySQL-Client,其它包根据需要安装.32位的下载下面的两个安装包文件:MySQL-server-5.6.11-2.linux_glibc2.5.i386.rpmMySQL-client-5.6.11-2.linux_glibc2.5.i386.rpm(而64位下载下面两个安装包文件:MySQL-server-5.6.11-2.linux_glibc2.5.x86_64.rpmMySQL-client-5.6.11-2.linux_glibc2.5.x86_64.rpm)第三步: 安装MySQL安装顺序: 先安装服务器,然后再安装客户端。
mysql 5.5.27 cmake安装

Centos下cmake编译安装mysql5.5.27安装简介用户名:mysql安装目录:/opt/svr/mysql数据库目录:/opt/svr/mysql/data源码包:mysql-5.5.27.tar.gz安装准备# 安装编译工具及依赖库yum -y install gcc gcc-c++ make cmake bison ncurses-devel# 解压tar xvf mysql-5.5.27.tar.gzmv /root/mysql-5.5.27 /opt/src/# 添加用户/usr/sbin/groupadd mysqluseradd -g mysql mysql -s /usr/sbin/nologin# 建立目录mkdir /opt/svr/mysqlmkdir /opt/svr/mysql/data编译安装cmake \-DCMAKE_INSTALL_PREFIX=/opt/svr/mysql \-DMYSQL_UNIX_ADDR=/opt/svr/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=/opt/svr/mysql/data \-DMYSQL_USER=mysql \-DMYSQL_TCP_PORT=3306make && make install编译参数说明:-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安装目录-DMYSQL_DATADIR=/usr/local/mysql/data //数据库存放目录-DWITH_MYISAM_STORAGE_ENGINE=1 //安装myisam存储引擎-DWITH_INNOBASE_STORAGE_ENGINE=1 //安装innodb存储引擎-DWITH_ARCHIVE_STORAGE_ENGINE=1 //安装archive存储引擎-DWITH_BLACKHOLE_STORAGE_ENGINE=1 //安装blackhole存储引擎-DENABLED_LOCAL_INFILE=1 //允许从本地导入数据-DDEFAULT_CHARSET=utf8 //使用utf8字符-DDEFAULT_COLLATION=utf8_general_ci //校验字符-DEXTRA_CHARSETS=all //安装所有扩展字符集-DMYSQL_TCP_PORT=3306 //MySQL监听端口-DMYSQL_USER=mysql //MySQL用户名-DWITH-EMBEDDED_SERVER=1 //编译成embedded MySQL library (libmysqld.a)-DSYSCONFDIR=/etc //MySQL配辑文件-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock //Unix socket 文件路径-DWITH_READLINE=1 //快捷键功能-DWITH_SSL=yes//SSL-DWITH_MEMORY_STORAGE_ENGINE=1 //安装memory存储引擎-DWITH_FEDERATED_STORAGE_ENGINE=1 //安装frderated存储引擎-DWITH_PARTITION_STORAGE_ENGINE=1 //安装数据库分区-DINSTALL_PLUGINDIR=/usr/local/mysql/plugin //插件文件及配置路径# 安装mysql默认的数据库chmod +x scripts/mysql_install_dbscripts/mysql_install_db --basedir=/opt/svr/mysql --datadir=/opt/svr/mysql/data--user=mysql# 复制配置文件cp support-files/f /opt/svr/mysql/f# 更改权限chown -R mysql:mysql /opt/svr/mysql修改f配置文件vi /opt/svr/mysql/f加上以下内容[mysqld]basedir = /opt/svr/mysqldatadir = /opt/svr/mysql/datalog-error = /opt/svr/mysql/mysql_error.logpid-file = /opt/svr/mysql/mysql.piduser = mysqltmpdir = /tmp启动mysqlcd /opt/svr/mysql/support-files/cp ./mysql.server /etc/init.d/mysql5service mysql5 start远程访问在CentOS系统中防火墙默认是阻止3306端口的,我们要是想访问mysql数据库,我们需要这个端口,命令如下:# 在iptables 加入运行访问3306/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT# 保存/etc/rc.d/init.d/iptables save# 重新启动iptables/etc/rc.d/init.d/iptables restart# 查看iptables状态/etc/init.d/iptables statusmysql不允许远程用户访问主机服务器 1130安装完之后成使用 mysql admin连接报错:ERROR 1130: Host ***.***.***.*** is not allowed to connect to this MySQL server说明所连接的用户帐号没有远程连接的权限,只能在本机(localhost)登录。
在Linux环境下安装MySQL的步骤和注意事项

在Linux环境下安装MySQL的步骤和注意事项在今天的科技发展中,数据库成为了各行各业的重要组成部分。
MySQL作为一个开源的关系型数据库管理系统,拥有良好的性能和稳定性,被广泛应用于各种Web应用和企业级系统。
在Linux环境下,安装MySQL可以帮助我们快速搭建并管理数据库,大大提高了我们的工作效率。
本文将介绍在Linux环境下安装MySQL的步骤和注意事项。
一、系统要求在选择安装MySQL之前,我们首先要确保我们的系统满足一些基本的要求。
通常,MySQL可以运行在各种Linux发行版上,包括但不限于Ubuntu、Debian、CentOS等。
在开始安装之前,我们需要确认以下条件:1. 操作系统版本:确保你的操作系统版本是MySQL支持的版本。
2. 系统资源:硬盘空间、内存和处理器的要求可以根据你的实际需求进行配置。
二、安装MySQL1. 下载MySQL可通过MySQL官方网站下载最新的MySQL二进制发行版。
在下载页面上,选择适合自己系统的发行版,点击下载即可。
2. 安装依赖库在开始安装MySQL之前,我们需要先安装一些依赖库,这些库包括但不限于libaio、libnuma、cmake等。
使用系统包管理器安装这些依赖库可以很方便地完成,例如在Ubuntu系统上,可以使用以下命令进行安装:sudo apt-get install libaio-dev libnuma-dev cmake```3. 解压安装包将下载好的MySQL压缩包解压到指定的目录下,例如:```tar -zxvf mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz -C /usr/local/mysql/```4. 配置环境变量为了方便使用MySQL命令,我们需要将MySQL的可执行文件所在的目录添加到系统的PATH环境变量中。
可以编辑/etc/profile文件,在其中添加如下内容:```export PATH=$PATH:/usr/local/mysql/bin```保存文件并执行以下命令来使其生效:```source /etc/profile```5. 初始化MySQL在执行MySQL之前,我们需要对其进行初始化配置。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具。
因此,我们首先要在系统中源码编译安装cmake工具。
# wget /files/v2.8/cmake-2.8.4.tar.gz
# tar zxvf cmake-2.8.4.tar.gz
# cd cmake-2.8.4
# ./configure
# make
# make install
2.确保以下所需系统软件包已经被安装
通过rpm -qa | grep name 的方式验证以下软件包是否已全部安装。
gcc* gcc-c++* autoconf* automake* zlib* libxml* ncurses-devel* libgcrypt* libtool*
如果缺少相关的软件包,可通过yum -y install 的方式在线安装,或直接从系统安装光盘中找到并通过rpm -ivh 的方式安装。
3. 安装前的系统设置
建立mysql安装目录及数据存放目录
# mkdir /opt/mysql
# mkdir /opt/mysql/data
创建用户和用户组
# groupadd mysql
# useradd -g mysql mysql
赋予数据存放目录权限
# chown mysql:mysql -R /opt/mysql/data
4.从configure更换为cmake
我相信大多数人都已经习惯了之前的configure方式,并且所使用的参数也是比较个性化的,换成cmake 之后,这一方面会带来不少的麻烦。
还好,MySQL的官方网站提供了二者的参数对照表,我们可以尽可能的保留之前的参数,来编译配置新的MySQL版本。
configure 与cmake 参数对照指南:
/wiki/Autotools_to_CMake_Transition_Guide
以我自己为例,之前我一直使用的参数为:
./configure --prefix=/opt/mysql/ \
--sysconfdir=/opt/mysql/etc \
--localstatedir=/opt/mysql/data \
--with-tcp-port=3306 \
--with-unix-socket-path=/tmp/mysqld.sock \
--with-mysqld-user=mysql \
--enable-assembler \
--with-extra-charsets=all \
--enable-thread-safe-client \
--with-big-tables \
--with-ssl \
--with-embedded-server \
--enable-local-infile \
--with-plugins=partition,innobase,myisammrg
经过与cmake的参数对照之后,去除掉已经被取消的参数(大多数是因为新版本已经默认启用),cmake 的参数配置如下:
cmake -DCMAKE_INSTALL_PREFIX=/opt/mysql \
-DSYSCONFDIR=/opt/mysql/etc \
-DMYSQL_DATADIR=/opt/mysql/data \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
-DMYSQL_USER=mysql \
-DEXTRA_CHARSETS=all \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1
5.编译安装MySQL 5.5.x
通过/downloads/mysql官方网址或国内的sohu镜像下载软件包,如目前最新的MySQL 5.5.13。
# wget /mysql/MySQL-5.5/mysql-5.5.13.tar.gz
# tar zxvf mysql-5.5.13.tar.gz
# cd mysql-5.5.13
# cmake -DCMAKE_INSTALL_PREFIX=/opt/mysql \
-DSYSCONFDIR=/opt/mysql/etc \
-DMYSQL_DATADIR=/opt/mysql/data \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
-DMYSQL_USER=mysql \
-DEXTRA_CHARSETS=all \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1
# make
# make install
在make与make install的时候可以看到进度百分比,感觉这一点要比configure方式要好。
6.配置并初始化数据库
创建f配置文件
# mkdir /opt/mysql/log
# mkdir /opt/mysql/etc
# cp support-files/f /opt/mysql/etc/f
初始化数据库
执行前需赋给scripts/mysql_install_db文件执行权限
# chmod 755 scripts/mysql_install_db
# scripts/mysql_install_db --user=mysql --basedir=/opt/mysql/ --datadir=/opt/mysql/data/ 创建管理MySQL数据库的shell脚本
# mkdir /opt/mysql/init.d
# cp support-files/mysql.server /opt/mysql/init.d/mysql
赋予shell脚本可执行权限:
# chmod +x /opt/mysql/init.d/mysql
启动MySQL:
# /opt/mysql/init.d/mysql start
通过命令行登录管理MySQL服务器(提示输入密码时直接回车):
# /opt/mysql/bin/mysql -u root -p -S /tmp/mysql.sock
输入以下SQL语句,创建一个具有root权限的用户(admin)和密码(12345678):GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' IDENTIFIED BY '12345678'; GRANT ALL PRIVILEGES ON *.* TO 'admin'@'127.0.0.1' IDENTIFIED BY '12345678'; 为root帐户设置初始密码
# /opt/mysql/bin/mysqladmin -u root password 'new-password'
删除本机匿名连接的空密码帐号
/opt/mysql/bin/mysql -uroot -p'new-password'
mysql>use mysql; //选择系统数据库mysql
mysql>select Host,User,Password from user; //查看所有用户
mysql>delete from user where password="";
mysql>flush privileges;
mysql>select Host,User,Password from user; //确认密码为空的用户是否已全部删除mysql>exit;。