聊聊mysql的cmake方式

本篇文章帶大家簡析下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… ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[確定]
[root@localhost scripts]# netstat -lntup | grep 3306
tcp ? ? ? ?0 ? ? ?0 0.0.0.0:3306 ? ? ? ? ? ? ? ?0.0.0.0:* ? ? ? ? ? ? ? ? ? LISTEN ? ? ?2671/mysqld

進入mysql服務器,如果之前配置了環境變量了,就可以執行mysql命令

mysql

刪除空用戶
mysql> select user,host from mysql.user;
user host
+——+———————–+
root 127.0.0.1
root ::1
localhost
root localhost
localhost.localdomain
root localhost.localdomain

6 rows in set (0.00 sec)

mysql> delete from mysql.user where user =”;
Query OK, 2 rows affected (0.09 sec)

mysql> select user,host from mysql.user;
user host
+——+———————–+
root 127.0.0.1
root ::1
root localhost
root localhost.localdomain

4 rows in set (0.00 sec)

mysql>

授權system管理員

mysql> grant all privileges on . to system@’localhost’ identified by ‘longjq’ with grant option;
Query OK, 0 rows affected (0.00 sec)

修改mysql密碼

/application/mysql//bin/mysqladmin -u root password ‘123456’
/application/mysql//bin/mysqladmin -u root -h localhost.localdomain password ‘new-password’

加入啟動管理

[root@localhost scripts]# chkconfig –list mysqld
mysqld ? ? ? ? ? ? 0:關閉 ? ?1:關閉 ? ?2:啟用 ? ?3:啟用 ? ?4:啟用 ? ?5:啟用 ? ?6:關閉`

故障排除

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

# 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

字符集錯誤?

[root@localhost scripts]# cat /etc/sysconfig/i18n  #LANG="zh_CN.GB18030"#這里改成zh_CN.UTF-8 LANG="zh_CN.UTF-8"

推薦學習:《mysql視頻教程

以上就是聊聊

? 版權聲明
THE END
喜歡就支持一下吧
點贊8 分享