一、Mysql简介
Mysql数据库:
1、社区版
2、商业版
3、cluster集群
Mysql安装方式
1、编译安装
2、yum/rpm
3、二进制包,直接解压,无需编译
二、Mysql安装部署
1、将工具使用rz命令上传到Linux系统下,Mysql服务与Nginx服务在同一下
[root@Lnmp yum.repos.d]# cd /home/tools/
[root@Lnmp tools]# ls
mysql-5.5.32-linux2.6-x86_64.tar.gz
2、就Mysql数据库来说,需要在系统创建一个名为Mysql的用户,专门用于负责运行Mysql数据库,要将这类账户的Bash终端设置为Nologin解释器,避免黑客通过该用户登录到服务器中,从而提高系统安全性。
[root@Lnmp tools]# useradd mysql -s /sbin/nologin -M
3、解压Mysql工具
[root@Lnmp tools]# tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz
4、将解压后的Mysql移动到/applocation/下并改名为mysql
[root@Lnmp tools]# mv mysql-5.5.32-linux2.6-x86_64 /application/mysql
5、初始化Mysql数据库
[root@Lnmp tools]# cd /application/mysql/
[root@Lnmp mysql]# chown -R mysql.mysql /application/mysql/data/ #授权让mysq可以管理该目录
[root@Lnmp mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/application/mysql/ --datadir=/application/mysql/data/ #user指定初始化用户 basedir指定安装目录 datadir数据目录包括数据库生成的库和表。如果出现报错是因为缺少缺少libaio库文件执行yum install libaio* -y出现两个OK就是成功
[root@Lnmp mysql]# cp support-files/mysql.server /etc/init.d/mysqld #复制mysql服务文件并且改名为mysqld
[root@Lnmp mysql]# cp support-files/my-small.cnf /etc/my.cnf #复制配置文件
[root@Lnmp mysql]# vim /etc/init.d/mysqld #修改配置文件
[root@Lnmp mysql]# /etc/init.d/mysqld start #启动mysql服务
[root@Lnmp mysql]# vim /etc/profile #配置环境变量
[root@Lnmp mysql]# /application/mysql//bin/mysqladmin -u root password '123456' #修改数据库管理员密码
三、Mysql数据库优化
[root@Lnmp mysql]# mysql -uroot -p123456
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql> drop database test;
Query OK, 0 rows affected (0.01 sec)
优化用户
mysql> select user,host from mysql.user;
+------+-----------+
| user | host |
+------+-----------+
| root | 127.0.0.1 |
| root | ::1 |
| | Lnmp |
| root | Lnmp |
| | localhost |
| root | localhost |
+------+-----------+
6 rows in set (0.00 sec)
mysql> drop user ''@'localhost';
Query OK, 0 rows affected (0.00 sec)
mysql> drop user 'root'@'::1';
Query OK, 0 rows affected (0.00 sec)
mysql> drop user ''@'Lnmp';
Query OK, 0 rows affected (0.00 sec)
mysql> drop user 'root'@'Lnmp';
Query OK, 0 rows affected (0.00 sec)
mysql> select user,host from mysql.user;
+------+-----------+
| user | host |
+------+-----------+
| root | 127.0.0.1 |
| root | localhost |
+------+-----------+
2 rows in set (0.00 sec)
如果发生删除不了的情况使用Sql语句delete删除
例:mysql> delete from mysql.user where user='root' and host='Lnmp';