手机版

采用cmake方式编译安装MySQL - MySQL中文参考手册

2019-09-11 阅读 :

cmake方式编译安装MySQL

由于MySQL5.5.xx-5.6.xx产品系列特殊性,所以编译方式也和早期的产品编译方式不同,采用cmake(cmake软件需要另外安装)或gmake方式安装编译.即:

./cmake . makemake install

操作流程

  • 卸载已安装的MySQL

  • 下载:当前mysql版本到了5.5.29

  • 必要软件包

  • 编译安装

    • 添加用户

    • 编译安装

    • 编译参数

    • 改变目录所有者

  • 初始化数据库

  • 注册为服务

  • 启动MySQL服务

  • 改变编码,防止乱码

  • 将mysql的bin加入到path中

  • 配置用户密码和远程访问权限

0. 卸载MySQL

# 查看是否有存在的MySQL运行进程[root@localhost src]# netstat -tunpl|grep mysqldtcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      3095/mysqld   # 关闭MySQL服务[root@localhost src]# service mysqld stop# 查看命令所在路径[root@localhost src]# which mysql/usr/bin/mysql# 查看rpm安装目录[root@localhost src]# rpm -qf /usr/bin/mysqlmysql-5.0.95-5.el5_9# 无依赖删除软件包[root@localhost src]# rpm -e mysql-5.0.95-5.el5_9 --nodepswarning: /etc/my.cnf saved as /etc/my.cnf.rpmsave

2. 必要软件包

yum -y install gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* make cmake curl freetype libjpeg-turbo libjpeg-turbo-devel openjpeg-libs libpng gd ncurses

3. 编译安装

  • 3.1 添加用户

useradd mysql -s /sbin/nologin
  • 3.2 编译安装

tar -zxvf mysql-5.5.29.tar.gz && cd mysql-5.5.29 #默认情况下是安装在/usr/local/mysql
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql /-DMYSQL_DATADIR=/usr/local/mysql/data /-DSYSCONFDIR=/etc /-DWITH_MYISAM_STORAGE_ENGINE=1 /-DWITH_INNOBASE_STORAGE_ENGINE=1 /-DWITH_MEMORY_STORAGE_ENGINE=1 /-DWITH_READLINE=1 /-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock /-DMYSQL_TCP_PORT=3306 /-DENABLED_LOCAL_INFILE=1 /-DWITH_PARTITION_STORAGE_ENGINE=1 /-DEXTRA_CHARSETS=all /-DDEFAULT_CHARSET=utf8 /-DDEFAULT_COLLATION=utf8_general_ci
make && make install
  • 3.3 改变目录所有者

chown -R mysql.mysql /usr/local/mysql

4、注册为服务

cd /usr/local/src/mysql-5.5.29/support-files#注册服务cp mysql.server /etc/rc.d/init.d/mysqld#使用默认配置文件cp my-small.cnf /etc/my.cnf#让chkconfig管理mysql服务chkconfig --add mysqld# 给mysqld授权执行 chmod a+x /etc/init.d/mysqld #或者使用 setfacl -m u:root:rwx /etc/init.d/mysqld#开机启动chkconfig mysqld on

5、初始化数据库

cd /usr/local/mysql/scripts ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

6、启动MySQL服务

service mysqld start

7、将mysql的bin加入到path中

ln -s /usr/local/mysql/bin/mysql /usr/local/sbin/mysqlcd ~#另外,把path添加到当前用户目录的bashrc中,如果需要全局设定,请修改`/etc/profile` vi .bashrc #加入以下内容 PATH=/usr/local/mysql/bin:$PATH source /etc/profile

8、修改MySQL数据库的root密码

/usr/local/mysql/bin/mysqladmin -u root password 'aaaaaa'

9、改变编码,防止乱码

SHOW VARIABLES LIKE 'character%'

修改mysql的my.cnf文件增加如下内容

[client]default-character-set=utf8[mysqld]character-set-server=utf8pid-file=/var/lib/mysql/mysqld.pid[mysql]default-character-set=utf8[mysqld_safe]log-error=/var/lib/mysql/mysql_error.err

10、配置用户密码和远程访问权限

GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.%' IDENTIFIED BY '123456' WITH GRANT OPTION;

相关博文参考: 
linux下MySQL 5.6源码安装 - 野性的呼唤的日志
*CentOS 6.4下编译安装MySQL 5.6.14 - Xiongpq *
linux下MySQL 5.6源码安装 -  我的Hello World

安装的时候遇到的问题

[root@localhost.localdomain /etc/init.d]# service mysqld restart/etc/init.d/mysqld: line 44: /usr/bin/my_print_defaults: 没有那个文件或目录/etc/init.d/mysqld: line 44: /usr/bin/my_print_defaults: 没有那个文件或目录/etc/init.d/mysqld: line 44: /usr/bin/my_print_defaults: 没有那个文件或目录/etc/init.d/mysqld: line 44: /usr/bin/my_print_defaults: 没有那个文件或目录停止 mysqld:                                              [确定]/etc/init.d/mysqld: line 117: /usr/bin/mysqladmin: 没有那个文件或目录Cannot check for MySQL Daemon startup because of mysqladmin failure.启动 mysqld:                                              [失败]

问题已经找到:原因是安装的时候没有卸载用yum安装的MySQL数据库(卸载操作查看0)


服务器软件 网络工具 网站工具 服务器教程 服务器知识 服务器技术 服务器之家 vps教程 vps是什么

本文标题:采用cmake方式编译安装MySQL - MySQL中文参考手册 - 服务器教程_服务器技术_服务器知识_vps教程
本文地址:https://www.helloaliyun.com/tutorial/486.html

相关文章

  • CentOS 7 常用命令(系统关机、重启以及登出)

    关机:(系统的关机、重启以及登出 ) # 关闭系统(1)[root@localhost ~]# shutdown -h now # 关闭系统(2)[root@localhost ~]# init 0 # 关闭系统(3)[root@localhost ~]# telinit 0 # 按预定时间关闭系统[root@localhost...

    2019-12-07 服务器教程
  • linux重启命令 reboot与shutdown -r now的区别与联系

    在linux命令中reboot是重新启动,shutdown -r now是立即停止然后重新启动,都说他们两个是一样的,其实是有一定的区别的。shutdown命令可以安全地关闭或重启Linux系统,它在系统关闭之前给系统上的所有登录用户提示一条警告...

    2019-12-07 服务器教程
  • CentOS 7 如何使用命令重启或关机

    安装GNOME的朋友们首先切换到字符界面。切换到字符界面的方法如下: 先登陆进入系统,进入图形化界面,然后按Ctrl+Alt+F6(笔记本的是Ctrl+Alt+shift+Fn),进入字符界面。关机命令:shutdown或poweroffshutdown:shutdown -h now...

    2019-12-07 服务器教程
  • CentOS 7 正确关机重启的命令方法

    linux主要用于服务器领域,而在服务器上执行一项服务是永无止境的,除非遇到特殊情况,否则不会关机。和Windows不同,在linux系统下,很多进程是在后台执行的。在屏幕背后,可能有很多人同时在工作。如果直接按下电源的按钮,其他...

    2019-12-07 服务器教程
  • CentOS下的yum upgrade和yum update区别,没事别乱用!

    说明:生产环境对软件版本和内核版本要求非常精确,别没事有事随便的进行yum update操作!!!!!!!!!yum update: 升级所有包同时也升级软件和系统内核yum upgrade:只升级所有包,不升级软件和系统内核...

    2019-12-07 服务器教程
你可能感兴趣
热门浏览