Linux安装MySQL—源码安装

2025-07-18 09:44:25

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多缨祢继泐任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle旗下产品。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。[1

工具/原料

MySQL

Linux

安装

1、假设已经有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz两个源文件,先安装cmake(mysql5.5以后是通过cmake来编译的)[root@ rhel5 local]#tar -zxv -f cmake-2.8.4.tar.gz[root@ rhel5 local]#cd cmake-2.8.4[root@ rhel5 cmake-2.8.4]#./configure[root@ rhel5 cmake-2.8.4]#make[root@ rhel5 cmake-2.8.4]#make install

2、创建mysql的安装目录及数据库存放目录[root@ rhel5~]#mkdir -p /usr/local/mysql //安装mysql [root@ rhel5~]#mkdir -p /usr/local/mysql/data //存放数据库

3、创建mysql用户及用户组[root@ rhel5~]groupadd mysql[root@ rhel5~]useradd -r -g mysql mysql

4、安装mysql[root@ rhel5 local]#tar -zxv -f mysql-5.5.10.tar.gz[root@ rhel5 local]#cd mysql-5.5.10[root@ rhel5 mysql-5.5.10]#cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-DMYSQL_DATADIR=/usr/local/mysql/data-DDEFAULT_CHARSET=utf8-DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1[root@ rhel5 mysql-5.5.10]#make[root@ rhel5 mysql-5.5.10]#make install

5、参数说明:-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安装目录-DINSTALL_DATADIR=/usr/local/mysql/data //数据库存放目录-DDEFAULT_CHARSET=utf8     //使用utf8字符-DDEFAULT_COLLATION=utf8_general_ci //校验字符-DEXTRA_CHARSETS=all     //安装所有扩展字符集-DENABLED_LOCAL_INFILE=1    //允许从本地导入数据注意事项:重新编译时,需要清除旧的对象文件和缓存信息。# make clean# rm -f CMakeCache.txt# rm -rf /etc/my.cnf

配置

1、设置目录权限[root@ rhel5~]# cd /usr/local/mysql[root@ rhel5 mysql]# chown -R root:mysql . //把当前目录中所有文件的所有者所有者设为root,所属组为mysql[root@ rhel5 mysql]# chown -R mysql:mysql data

2、[root@ rhel5 mysql]# cp support-files/my-medium.cnf /etc/my.cnf //将mysql的启动服务添加到系统服务中

3、创建系统数据库的表[root@ rhel5 mysql]# cd /usr/local/mysql[root@ rhel5 mysql]# scripts/mysql_install_db --user=mysql

4、设置环境变量[root@ rhel5~]# vi /root/.bash_profile在PATH=$PATH:$HOME/bin添加参数为:PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib[root@ rhel5~]#source /root/.bash_profile

5、手动启动mysql[root@ rhel5~]# cd /usr/local/mysql[root@ rhel5 mysql]# ./bin/mysqld_safe --user=mysql &   //启动MySQL,但不能停止启动日志写在此文件下:/usr/local/mysql/data/localhost.err关闭MySQL服务[root@ rhel5 mysql]# mysqladmin -u root -p shutdown  //这里MySQL的root用户还没有配置密码,所以为空值。需要输入密码时,直接点回车键即可。

6、另一种简单的启动mysql的方法(mysql已韦蛾拆篮经被添加到系统服务中)[root@ rhel5~]# service mysql.server start [root@ rhel5~]# service mysql.server stop[root@ rhel5~]# service mysql.server restart如果上述命令出现:mysql.server 未识别的服务则可能mysql还没添加到系统服务中,下面用另一种方法添加:[root@ rhel5 mysql]# cp support-files/mysql.server /etc/init.d/mysql //将mysql的启动服务添加到系统服务中注意:主要是将mysql.server拷贝到/etc/init.d中,命名为mysql。在有的系统中,mysql.server在/usr/local/mysql/share/mysql/mysql.server中,而本系统中,mysql.server在/usr/local/mysql/support-files/mysql.server中。然后再用#service mysql start 来启动mysql即可。

7、修改MySQL的root用户的辩尢霆靡密码以及打开远程连接[root@ rhel5~]# mysql -u root mysqlmysql>us髫潋啜缅e 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 from user 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;

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
相关推荐
  • 阅读量:57
  • 阅读量:71
  • 阅读量:74
  • 阅读量:26
  • 阅读量:58
  • 猜你喜欢