您当前的位置: 首页 > 学无止境 > 心得笔记 网站首页心得笔记
linux优化篇-编译安装Mysql与管理
发布时间:2017-11-22 16:56:45编辑:雪饮阅读()
【1】什么是Mysql
MyQL是一个开放源码的小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
【2】安装Mysql
一、安装简介
用户名:mysql
安装目录:/usr/local/mysql-5.5
数据库目录:/data/mysql/data
源码包:mysql-5.5.28.tar.gz
二、安装准备
mysql5.3后开始使用cmake的方式进行编译
添加用户
useradd -s /sbin/nologin mysql
建立所需目录,下面命令中-p指的是递归创建目录
mkdir -p /data/mysql/data
chown -R mysql:mysql /data/mysql
安装编译所需文件或程序
yum install gcc gcc-c++ cmake ncurses-devel bison
下载源码包
http://sourceforge.net/projects/mysql.mirror/files/MySQL%205.5.28/
wget http://ncu.dl.sourceforge.net/project/mysql.mirror/MySQL%205.5.28/mysql-5.5.28.tar.gz
三、编译安装
tar xzvf mysql-5.5.28.tar.gz
cd mysql-5.5.28
cmake -DMYSQL_USER=mysql -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.5 -DINSTALL_DATADIR=/data/mysql/data -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1
参数说明:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安装目录
-DMYSQL_DATADIR=/usr/local/mysql/data //数据库存放目录
-DWITH_MYISAM_STORAGE_ENGINE=1 //安装myisam存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 //安装innodb存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 //安装archive存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 //安装blackhole存储引擎
-DENABLED_LOCAL_INFILE=1 //允许从本地导入数据
-DDEFAULT_CHARSET=utf8 //使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci //校验字符
-DEXTRA_CHARSETS=all //安装所有扩展字符集
-DMYSQL_TCP_PORT=3306 //MySQL监听端口
-DMYSQL_USER=mysql //MySQL用户名
其他参数:
-DWITH-EMBEDDED_SERVER=1 //编译成embedded MySQL library (libmysqld.a)
-DSYSCONFDIR=/etc //MySQL配辑文件
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock //Unix socket 文件路径
-DWITH_READLINE=1 //快捷键功能
-DWITH_SSL=yes //SSL
-DWITH_MEMORY_STORAGE_ENGINE=1 //安装memory存储引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1 //安装frderated存储引擎
-DWITH_PARTITION_STORAGE_ENGINE=1 //安装数据库分区
-DINSTALL_PLUGINDIR=/usr/local/mysql/plugin //插件文件及配置路径
make && make install
chown -R mysql:mysql /usr/local/mysql5.5/
默认已经有my.cnf但是my-large.cnf更为丰富
mv /root/mysql-5.5.28/support-files/my-large.cnf /etc/my.cnf
下面这个命令若提示文件已存在就不要覆盖了,因为每个操作系统中该文件是不同的
mv /root/mysql-5.5.28/support-files/mysql.server /etc/init.d/mysqld
chmod a+x /etc/init.d/mysqld
开机启动
level参数:
--level<等级代号> 指定读系统服务要在哪一个执行等级中开启或关毕。
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动
意思是说mysql将会在345这3种模式下自动启动
chkconfig --level 345 mysqld on
设置环境变量
将mysql加入环境变量
echo "export PATH=/usr/local/mysql5.5/bin/:$PATH" >> /etc/profile
在当前用户所登陆的bash环境中重新读取下profile
source /etc/profile
初始化设置mysql相关路径
上面命令执行后会在结果中提示一条修改mysql密码的命令,此时我们暂时不设置密码
设置mysql的basedir和datadir(数据目录)于my.cnf的[mysqldump]之上
vim /etc/my.cnf
basedir=/usr/local/mysql5.5
datadir=/data/mysql/data
然后再次重启mysqld服务
service mysqld restart
这时候就可以修改密码了
修改密码
/usr/local/mysql5.5/bin/mysqladmin -u root password '你的密码'
关键字词:linux,优化