聊聊mysql的cmake方式

藏色散人
發布: 2021-10-19 16:28:24
轉載
2572 人瀏覽過

這篇文章帶大家簡析下mysql的安裝cmake方式,介紹一下cmake方式的一些知識,希望對大家有幫助!

一般分為以下幾種

yum
rpm套件
常規編譯安裝
cmake安裝
二進位套件免安裝

如何選擇

個人使用yum或rpm套件安裝

企業使用多用常規編譯和cmake及二進位套件免安裝

數量少的話
5.1.x版本選擇使用常規編譯安裝
5.5.x版本選擇使用cmake方式編譯安裝

數量多的話
直接使用二進位套件免安裝

先查看系統環境

[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
登入後複製

在安裝cmake軟體,需要安裝gcc和gcc-c

yum -y install gcc

yum -y install gcc-c

編譯安裝完cmake後,需要安裝依賴套件

yum install ncurses-devel -y

#記得先要安裝使用者和群組
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd mysql -s /sbin/nologin -M -g mysql

依賴套件安裝完後,cd進入mysql的目錄進行cmake操作

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 "
执行成功返回下面代码
登入後複製

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

make && install
安装完成
登入後複製

[100%] Built target my_safe_process #此處make完成
....
....
....
-- Installing: /application/mysql-5.5.32/support-files/solaris/postinstall-solaris #此處make install 完成

建立link
登入後複製

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

建立my.cnf
登入後複製

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

配置环境变量
登入後複製

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

给mysql用户和mysql用户组授权
登入後複製

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

chmod -R 1777 /tmp/

初始化db脚本,假如有两个ok,就证明成功
登入後複製

#[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文件
登入後複製

vim /etc/hosts

加入www

加入mysqld脚本
登入後複製

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

加入mysqld脚本执行权限
登入後複製

chmod x /etc/init.d/mysqld

执行mysqld运行
登入後複製

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

#mysql> select user,host from mysql.user ;user# -- ---- ----------------------- root127.0.0.1root#::1rootlocalhost#rootlocalhost.localdomain6 rows in set (0.00 sec)


localhost
localhost.localdomain
mysql> delete from mysql.user where user ='';

Query OK, 2 rows affected (0.09 sec)


##mysql> select user,host from mysql.user;#mysql> select user,host from mysql.user;user##user#host ---- -- ----------------------- root127.0.0.1root::1rootlocalhost##root

#host

localhost.localdomain

4 rows in set (0.00 sec)
mysql> ;

进入mysql服务器,如果之前配置了环境变量了,就可以执行mysql命令
登入後複製

mysql> grant all privileges on
.

to system@'localhost' identified by 'longjq' with grant option;

Query OK, 0 rows affected (0.00 sec)

删除空用户
登入後複製
/application/mysql//bin/mysqladmin -u root password '123456'/application/mysql//bin/mysqladmin -u root -h localhost.localdomain password 'new-password'
授权system管理员
登入後複製

[root@localhost scripts]# chkconfig --list mysqld

mysqld             0:   1:關閉   2:   

##故障排除

登入不了mysql?刪除文件,重新初始化

修改mysql密码
登入後複製
字元集錯誤?

加入启动管理
登入後複製
推薦學習:《
mysql影片教學》#######

以上是聊聊mysql的cmake方式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:segmentfault.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!