Home > Database > Mysql Tutorial > Let's talk about the cmake method of mysql

Let's talk about the cmake method of mysql

藏色散人
Release: 2021-10-19 16:28:24
forward
2637 people have browsed it

This article will give you a brief analysis of the cmake method of installing mysql, and introduce some knowledge of the cmake method. I hope it will be helpful to everyone!

is generally divided into the following types

yum
rpm package
Conventional compilation and installation
cmake installation
Binary package installation free

How to choose

Personal useYum or rpm package installation

Enterprise useUse regular compilation Free installation with cmake and binary packages

If the quantity is small
For the 5.1.x version, choose to use regular compilation and installation
For the 5.5.x version, choose to use cmake to compile and install

If the quantity is large
Use the binary package directly without installation

First check the system environment

[root@localhost ~]# cat /etc/redhat-release 
CentOS release 6.5 (Final)
[root@localhost ~]# uname -r
2.6.32-431.el6.x86_64
[root@localhost ~]# uname -m
x86_64
Copy after login

When installing cmake software, you need to install gcc and gcc-c

yum -y install gcc

yum -y install gcc-c

After compiling and installing cmake, you need to install dependency packages

yum install ncurses-devel -y

Remember first To install users and groups
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd mysql -s /sbin/nologin -M -g mysql

Dependent packages are installed After that, cd into the mysql directory for cmake operation

cmake -DCMAKE_INSTALL_PREFIX=/application/mysql-5.5.32 \
-DMYSQL_DATADIR=/application/mysql-5.5.32/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.5.32/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 \
-DWITH_FAST_MUTEXES=1 \
-DWITH_ZLIB=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_READLINE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DWITH_DEBUG=0 \


-DWITHOUT_PARTITION_STORAGE_ENGINE=1 \           貌似因为64位主机编译不过去!!!
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DEXTRA_CHARSETS=all "
执行成功返回下面代码
Copy after login

Build files have been written to: /root/lamp/mysql-5.5.32

make && install
安装完成
Copy after login

[100%] Built target my_safe_process #This Make completion
....
....
....
-- Installing: /application/mysql-5.5.32/support-files/solaris/postinstall-solaris # Here make install is completed

建立link
Copy after login

ln -s /application/mysql-5.5.32/ application/mysql

建立my.cnf
Copy after login

[root@localhost /]# cp /application/mysql-5.5.32 /support-files/my-small.cnf /etc/my.cnf
cp: Overwrite "/etc/my.cnf"? y

配置环境变量
Copy after login

echo 'export PATH=/application/mysql/bin:$PATH' >> /etc/profile
tail -l /etc/profile
source /etc/profile
echo $PATH

给mysql用户和mysql用户组授权
Copy after login

chown -R mysql.mysql /application/mysql/data/

chmod -R 1777 /tmp/

初始化db脚本,假如有两个ok,就证明成功
Copy after login

[root@localhost / ]# cd /application/mysql/scripts/
[root@localhost scripts]# ./mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql
Installing MySQL system tables...
OK
Filling help tables...
OK

修改hosts文件
Copy after login

vim /etc/hosts

Join www

加入mysqld脚本
Copy after login

cp /root/lamp/mysql-5.5.32/support-files/mysql.server /etc/init.d/mysqld

加入mysqld脚本执行权限
Copy after login

chmod x /etc/init.d/mysqld

执行mysqld运行
Copy after login

[root@localhost scripts]# /etc/init.d/mysqld start
Starting MySQL...                                                                                                                                                                                                                                                        0 0 0.0.0.0:3306 0.0.0.0:* 2671/mysqld

进入mysql服务器,如果之前配置了环境变量了,就可以执行mysql命令
Copy after login

mysql
删除空用户
Copy after login

##mysql> select user ,host from mysql.user ;userhost -- ---- ----------------------- root127.0.0.1root::1# #localhostlocalhost##localhost.localdomainrootlocalhost.localdomainmysql> delete from mysql.user where user ='';Query OK, 2 rows affected (0.09 sec)



root

6 rows in set (0.00 sec)

##mysql> select user,host from mysql.user;

hostroot##rootlocalhostrootlocalhost.localdomain##4 rows in set (0.00 sec)mysql> ;mysql> grant all privileges on . to system@'localhost' identified by 'longjq' with grant option;

user
---- -----------------------

127.0.0.1
root ::1
授权system管理员
Copy after login
Query OK, 0 rows affected (0.00 sec)

修改mysql密码
Copy after login
/application/mysql//bin/mysqladmin -u root password '123456'

/application/mysql//bin/mysqladmin -u root -h localhost.localdomain password 'new-password'

Rrieee

[root@localhost scripts]#chKConfig -List mysqld mysqld 0: Close 1: Close 2: Enlightenment 3: Enlightenment 5: Enlighten 6: Close

##Troubleshooting


Can’t log in to mysql? Delete the file and re-initialize

加入启动管理
Copy after login

Character set error?

# mysql
access denied for user 'localhost'......
# pkill mysqld
# lsof -i :3306
# rm -fr /application/mysql/data/*
# /application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql
Copy after login
Recommended learning: "mysql video tutorial

"

The above is the detailed content of Let's talk about the cmake method of mysql. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:segmentfault.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template