linux源码安装mysql(CentOS)

来源:互联网 发布:淘宝客服绩效考核 编辑:程序博客网 时间:2024/05/22 22:02

整理了关于mysql的源码安装如下:

1、linux环境调整优化

1.1 关闭NUMA

编辑/etc/grub.conf文件,在kernel后面增加 numa=offelevator=deadline

1.2 关闭selinux

编辑/etc/selinux/config文件,在最后面增加SELINUX=disabled

1.3 修改unlimit参数

编辑/etc/security/limits.conf文件,增加下面四行信息:

root soft nofile 65535

root hard nofile 65535

 

root soft nproc 7000

root hard nproc 7000

1.4 关闭iptables

#service iptables stop

#/etc/init.d/iptables stop

#chkconfig iptables off

1.5 修改环境变量

#Vi .bash_profile

增加下面内容:

export PATH=/usr/local/mysql/bin:/opt/mysql/mysql-5.6.24/bin:$HOME/bin:$PATH

#source .bash_profile

 

由于修改的内容较多,建议到此步时,重启一次linux,并验证参数等配置是否生效。

 

 

准备事项

1.安装make编译器

# rpm -qa | grep make肯定是能够找到的。(# rpm -qa 是查看该软件是否被安装)

 

# tar zxvf make-3.82.tar.gz 

# cd make-3.82 

# ./configure 

# make 

# make install 

 

2.安装bison

# tar zxvf bison-2.5.tar.gz 

# cd bison-2.5 

# ./configure 

# make 

# make install 

 

3.安装gcc-c++

# tar zxvfgcc-c++-4.4.4.tar.gz 

# cd gcc-c++-4.4.4 

#./configure 

# make 

# make install 

 

4.安装cmake

# tar zxvf cmake-2.8.4.tar.gz 

# cd cmake-2.8.4 

#./configure 

# make 

# make install 

 

5.安装ncurses

# tar zxvf ncurses-5.8.tar.gz 

# cd ncurses-5.8 

#./configure 

# make 

# make install 

 

安装MySQL

第一步:

# groupadd mysql 

# useradd mysql -g mysql -M -s /sbin/nologin 

#增加一个名为 mysql的用户。

-g:指定新用户所属的用户组(group)

-M:不建立根目录

-s:定义其使用的shell/sbin/nologin代表用户不能登录系统。

第二步:

解压并安装MySQL

# tar zxvfmysql-5.6.12.tar.gz 

# cd mysql-5.6.12 

# cmake ./

#-DCMAKE_INSTALL_PREFIX=/usr/local/mysql          \    #安装路径

# -DMYSQL_DATADIR=/usr/local/mysql/data            \    #数据文件存放位置

#-DSYSCONFDIR=/etc                                \    #my.cnf路径

#-DWITH_MYISAM_STORAGE_ENGINE=1                   \    #支持MyIASM引擎

#-DWITH_INNOBASE_STORAGE_ENGINE=1                 \    #支持InnoDB引擎

#-DWITH_MEMORY_STORAGE_ENGINE=1                   \    #支持Memory引擎

#-DWITH_READLINE=1                                \    #快捷键功能(我没用过)

#-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock               \    #连接数据库socket路径

# -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 

第三步:

# cd /usr/local/mysql 

# chown -R mysql:mysql.    (#这里最后是有个.的大家要注意为了安全安装完成后请修改权限给root用户)

# scripts/mysql_install_db --user=mysql    (先进行这一步再做如下权限的修改)

# chown -R root:mysql.     (将权限设置给root用户,并设置给mysql组, 取消其他用户的读写执行权限,仅留给mysql"rx"读执行权限,其他用户无任何权限)

# chown -R mysql:mysql./data    (数据库存放目录设置成mysql用户mysql)

# chmod -R ug+rwx  .     (赋予读写执行权限,其他用户权限一律删除仅给mysql用户权限)

第四步:

下面的命令是将mysql的配置文件拷贝到/etc

# cpsupport-files/my-default.cnf  /etc/my.cnf

5.6之前的版本用如下命令)

# cp support-files/my-medium.cnf/etc/my.cnf  5.6之前的版本是此操作,读者也可在此时自己进入support-files文件夹下面,看是配置文件的真正名称,那个存在,就拷贝那个。。)

修改my.cnf配置

   # vi /etc/my.cnf

    

#[mysqld] 下面添加:

 user=mysql

    datadir=/usr/local/mysql/data

 default-storage-engine=MyISAM

第五步:

启动mysql

# bin/mysqld_safe --user=mysql&    

启动mysql,看是否成功 

# ps –ef|grep mysql

# netstat -tnl|grep 3306 

第五步

mysql的启动服务添加到系统服务中 

# cpsupport-files/mysql.server  /etc/init.d/mysql 

现在可以使用下面的命令启动mysql 

# servicemysql start 

停止mysql服务 

# servicemysql stop 

重启mysql服务 

# servicemysql restart 

 

 

第六步:

修改root用户密码

# chkconfig--add mysql

修改默认root账户密码,默认密码为空

修改密码 cd 切换到mysql所在目录

# cd/usr/local/mysql

#./bin/mysqladmin -u root password

回车在接下来的提示中设置新密码即可。。

第七步:

# servicemysqlrestart;              (重启mysql服务器)

# cd/usr/local/mysql/bin/        (进入mysqlbasedir下面的bin中)

#./mysql                                (开启客户端)

 

第八步:

测试一下

第九步:

修改MySQL的root用户的密码以及打开远程连接

[root@ rhel5~]# mysql -u root mysql

mysql>use mysql;
mysql>desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY"root";  //为root添加远程连接的能力。
mysql>update user set Password = password('xxxxxx') where User='root';
mysql>select Host,User,Password  fromuser where User='root';
mysql>flush privileges;
mysql>exit

重新登录:mysql -u root -p

若还不能进行远程连接,则关闭防火墙
[root@ rhel5~]#/etc/rc.d/init.d/iptables stop

注:如果不能远程连接,出现错误mysql error number 1130,则加入下面语句试试:

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

 

卸载

手工删除所创建的目录及my.cnf文件

#rm/etc/my.cnf

#cd/usr/local

#rmmysql

#rm-rf mysql

 

 

 

0 0