前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux下使用cmake编译安装mysql的详细教程

linux下使用cmake编译安装mysql的详细教程

作者头像
砸漏
发布2020-10-19 12:01:08
3.7K1
发布2020-10-19 12:01:08
举报
文章被收录于专栏:恩蓝脚本恩蓝脚本

一、安装cmake

1、解压cmake压缩包

代码语言:javascript
复制
[root@mysql tools]# tar -zvxf cmake-2.8.8.tar.gz
[root@mysql tools]# ls
cmake-2.8.8 cmake-2.8.8.tar.gz mysql-5.5.16.tar.gz scripts

2、解析

代码语言:javascript
复制
[root@mysql tools]# cd cmake-2.8.8
[root@mysql cmake-2.8.8]# ./configure
---------------------------------------------
CMake 2.8.8, Copyright 2000-2009 Kitware, Inc.
Found GNU toolchain
C compiler on this system is: gcc
C++ compiler on this system is: g++
Makefile processor on this system is: gmake
g++ is GNU compiler
g++ has STL in std:: namespace
g++ has ANSI streams
g++ has streams in std:: namespace

3、安装

代码语言:javascript
复制
[root@mysql cmake-2.8.8]# echo $?
0
#如果返回值是0,就是执行成功,如果返回值是1,就是执行失败;

[root@mysql cmake-2.8.8]# gmake && gmake install
Scanning dependencies of target cmIML_test
[ 1%] Building C object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test.c.o
[ 1%] Building C object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test_ABI_C.c.o
[ 1%] Building C object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test_INT_C.c.o
[ 1%] Building C object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test_include_C.c.o
[ 2%] Building CXX object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test_ABI_CXX.cxx.o
[ 2%] Building CXX object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test_INT_CXX.cxx.o
[ 2%] Building CXX object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test_include_CXX.cxx.o

二、开始安装mysql

1、首先需要安装(ncurses-devel)依赖包

代码语言:javascript
复制
[root@mysql cmake-2.8.8]# cd …
[root@mysql tools]# yum -y install ncurses-devel
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile

base: mirrors.zju.edu.cn
extras: centos.ustc.edu.cn
updates: mirrors.zju.edu.cn
Resolving Dependencies
–> Running transaction check
—> tools ncurses-devel.x86_64 0:5.9-14.20130511.el7_4 will be installed
#############安装完成后检查###########
[root@mysql tools]# rpm -qa | grep ncurses-devel
ncurses-devel-5.9-14.20130511.el7_4.x86_64
[root@mysql tools]#

2、解压mysql压缩包

代码语言:javascript
复制
[root@mysql tools]# tar -zvxf mysql-5.5.16.tar.gz
[root@mysql tools]# ls
cmake-2.8.8 cmake-2.8.8.tar.gz mysql-5.5.16 mysql-5.5.16.tar.gz scripts
[root@mysql tools]#

3、创建虚拟用户

代码语言:javascript
复制
[root@mysql tools]# useradd mysql -s /sbin/nologin -M
[root@mysql tools]# id mysql
uid=1000(mysql) gid=1000(mysql) groups=1000(mysql)
[root@mysql tools]#

4、配置解析

代码语言:javascript
复制
[root@mysql tools]# cd mysql-5.5.16
[root@mysql mysql-5.5.16]#
[root@mysql mysql-5.5.16]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.16 -DMYSQL_DATADIR=/usr/local/mysql-5.5.16/data -DMYSQL_UNIX_ADDR=/usr/local/mysql-5.5.16/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii -DENABLED_LOCAL_INFILE=ON -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_PARTITION_STORAGE_ENGINE=1 -DWITH_FAST_MUTEXES=1 -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DWITH_EMBEDDED_SERVER=1 -DWITH_DEBUG=0

5、安装

代码语言:javascript
复制
[root@mysql mysql-5.5.16]# make && make install
Scanning dependencies of target INFO_BIN
[ 0%] Built target INFO_BIN
Scanning dependencies of target INFO_SRC
[ 0%] Built target INFO_SRC
Scanning dependencies of target abi_check
[ 0%] Built target abi_check
Scanning dependencies of target zlib

6、创建软连接

代码语言:javascript
复制
[root@mysql mysql-5.5.16]# ln -s /usr/local/mysql-5.5.16/ /usr/local/mysql
[root@mysql mysql-5.5.16]# readlink /usr/local/mysql
/usr/local/mysql-5.5.16/
[root@mysql mysql-5.5.16]#

7、配置环境

代码语言:javascript
复制
[root@mysql mysql-5.5.16]# cd …
[root@mysql tools]# echo ‘export PATH=/usr/local/mysql/bin:$PATH' >>/etc/profile

[root@mysql tools]# tail -1 /etc/profile
export PATH=/usr/local/mysql/bin:$PATH

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

8、拷贝、查看、设置属主、及添加tmp权限

代码语言:javascript
复制
[root@mysql tools]# \cp mysql-5.5.16/support-files/my-small.cnf /etc/my.cnf
[root@mysql tools]# ll /usr/local/mysql/data/
total 0
drwxr-xr-x 2 root root 20 May 31 11:51 test
[root@mysql tools]# chown -R mysql.mysql /usr/local/mysql/data/
[root@mysql tools]# chmod -R 1777 /tmp/
[root@mysql tools]#

9、初始化数据库

代码语言:javascript
复制
[root@mysql tools]# cd /usr/local/mysql/scripts/
[root@mysql scripts]# ./mysql_install_db --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql
Installing MySQL system tables…
OK
Filling help tables…
OK

  注:看到两个ok表示成功

10、设置开机启动

代码语言:javascript
复制
[root@mysql scripts]# cd /roottools/mysql-5.5.16
[root@mysql mysql-5.5.16]# cp support-files/mysql.server /etc/init.d/mysqld
[root@mysql mysql-5.5.16]# chmod -R 755 /etc/init.d/mysqld
[root@mysql mysql-5.5.16]# chkconfig --add mysqld
[root@mysql mysql-5.5.16]# chkconfig mysqld on
[root@mysql mysql-5.5.16]# chkconfig --list mysqld

Note: This output shows SysV services only and does not include native
systemd services. SysV configuration data might be overridden by native
systemd configuration.

If you want to list systemd services use ‘systemctl list-unit-files'.
To see services enabled on particular target use
‘systemctl list-dependencies [target]'.
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@mysql mysql-5.5.16]#

11、启动mysql数据库

代码语言:javascript
复制
[root@mysql mysql-5.5.16]# /etc/init.d/mysqld start
Starting MySQL… SUCCESS!
[root@mysql mysql-5.5.16]#

12、查看端口进程

代码语言:javascript
复制
[root@mysql mysql-5.5.16]# lsof -i:3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 51146 mysql 10u IPv4 82600 0t0 TCP :mysql (LISTEN)
[root@mysql mysql-5.5.16]# netstat -lnutp|grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0: LISTEN 51146/mysqld
[root@mysql mysql-5.5.16]# ps -ef|grep 3306
mysql 51146 50900 0 14:13 pts/1 00:00:00 /usr/local/mysql-5.5.16/bin/mysqld --basedir=/usr/local/mysql-5.5.16 --datadir=/usr/local/mysql-5.5.16/data --plugin-dir=/usr/local/mysql-5.5.16/lib/plugin --user=mysql --log-error=/usr/local/mysql-5.5.16/data/mysql.err --pid-file=/usr/local/mysql-5.5.16/data/mysql.pid --socket=/usr/local/mysql-5.5.16/tmp/mysql.sock --port=3306
root 51170 16240 0 14:14 pts/1 00:00:00 grep --color=auto 3306
[root@mysql mysql-5.5.16]#

注:如果要重新初始化只要删除data目录库文件存储地或者新建一个库文件存储地,重新初始化,提示两个ok就是成功

进入数据库

[root@localhost ~]# mysql

查看所有用户

代码语言:javascript
复制
mysql> use mysql
mysql> show tables;
mysql> select user,host from user;

删除系统默认的

代码语言:javascript
复制
delete from mysql.user where user='';
delete from mysql.user where host='::1';
select user,host from mysql.user;

只保留这两个

代码语言:javascript
复制
mysql> select user,host from mysql.user;
±-----±----------+
| user | host |
±-----±----------+
| root | 127.0.0.1 |
| root | localhost |
±-----±----------+
2 rows in set (0.00 sec)

mysql>
#########################

添加额外的授权管理员用户

grant all privileges on . to system@‘192.168.%' identified by ‘system' with grant option;

字符集路径

vi /etc/locale.conf #centos7

mysql创建密码

代码语言:javascript
复制
/application/mysql//bin/mysqladmin -u root password ‘123456'

mysql修改密码

代码语言:javascript
复制
/application/mysql//bin/mysqladmin -u root -p123456 password ‘112233'

总结

以上所述是小编给大家介绍的linux下使用cmake编译安装mysql的详细教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对ZaLou.Cn网站的支持! 如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档