mysql

mysql介绍

mysql是一个·关系型数据库管理系统mysql,最流行的关系型数据库管理系统,在web应用方面mysql是最好的关系型数据库管理系统应用软件之一。

下载安装

linux版本
二进制rpm包安装
yum -y install mysql-server mysql
源码安装mysql
1.解压tar包
cd /software
tar -xzvf mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.6.21-linux-glibc2.5-x86_64 mysql-5.6.21

2.添加用户与组
groupadd mysql
useradd -r -g mysql mysql
chown -R mysql:mysql mysql-5.6.21

3.安装数据库
su mysql
cd mysql-5.6.21/scripts
./mysql_install_db --user=mysql --basedir=/software/mysql-5.6.21 --datadir=/software/mysql-5.6.21/data

4.配置文件
cd /software/mysql-5.6.21/support-files
cp my-default.cnf /etc/my.cnf
cp mysql.server /etc/init.d/mysql
vim /etc/init.d/mysql   #若mysql的安装目录是/usr/local/mysql,则可省略此步
修改文件中的两个变更值
basedir=/software/mysql-5.6.21
datadir=/software/mysql-5.6.21/data

5.配置环境变量
vim /etc/profile
export MYSQL_HOME="/software/mysql-5.6.21"
export PATH="$PATH:$MYSQL_HOME/bin"
source /etc/profile

6.添加自启动服务
chkconfig --add mysql
chkconfig mysql on

7.启动mysql
service mysql start

8.登录mysql及改密码与配置远程访问
mysqladmin -u root password 'your_password'     #修改root用户密码
mysql -u root -p     #登录mysql,需要输入密码
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_password' WITH GRANT OPTION;     #允许root用户远程访问
mysql>FLUSH PRIVILEGES;     #刷新权限
源码安装mariadb
1. 解压
tar zxvf  mariadb-5.5.31-linux-x86_64.tar.gz   
mv mariadb-5.5.31-linux-x86_64 /usr/local/mysql //必需这样,很多脚本或可执行程序都会直接访问这个目录

2. 权限
groupadd mysql             //增加 mysql 属组 
useradd -g mysql mysql     //增加 mysql 用户 并归于mysql 属组 
chown mysql:mysql -Rf  /usr/local/mysql    // 设置 mysql 目录的用户及用户组归属。 
chmod +x -Rf /usr/local/mysql    //赐予可执行权限 

3. 拷贝配置文件
cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf     //复制默认mysql配置 文件到/etc目录 

4. 初始化
/usr/local/mysql/scripts/mysql_install_db --user=mysql          //初始化数据库 
cp  /usr/local/mysql/support-files/mysql.server    /etc/init.d/mysql    //复制mysql服务程序 到系统目录 
chkconfig  mysql on     //添加mysql 至系统服务并设置为开机启动 
service  mysql  start  //启动mysql

5. 环境变量配置
vim /etc/profile   //编辑profile,将mysql的可执行路径加入系统PATH
export PATH=/usr/local/mysql/bin:$PATH 
source /etc/profile  //使PATH生效。

6. 账号密码
mysqladmin -u root password 'yourpassword' //设定root账号及密码
mysql -u root -p  //使用root用户登录mysql
use mysql  //切换至mysql数据库。
select user,host,password from user; //查看系统权限
drop user ''@'localhost'; //删除不安全的账户
drop user root@'::1';
drop user [email protected];
select user,host,password from user; //再次查看系统权限,确保不安全的账户均被删除。
flush privileges;  //刷新权限

7. 一些必要的初始配置
1)修改字符集为UTF8
vi /etc/my.cnf
在[client]下面添加 default-character-set = utf8
在[mysqld]下面添加 character_set_server = utf8
2)增加错误日志
vi /etc/my.cnf
在[mysqld]下面添加:
log-error = /usr/local/mysql/log/error.log
general-log-file = /usr/local/mysql/log/mysql.log
3) 设置为不区分大小写,linux下默认会区分大小写。
vi /etc/my.cnf
在[mysqld]下面添加:
lower_case_table_name=1
修改完重启:#service  mysql  restart
源码安装mariadb

window版本

1.下载路径:http://dev.mysql.com/downloads/mysql/
2.首先下载来的安装包,然后把下载下来的压缩包解压到你要存放的路径
3.然后设置环境变量.列如我的存放在e盘
4.设置环境变量:path--E:\mysql-5.7.19-winx64\bin;
5.mysqld --initialize-insecure初始化(一初始化就产生了一个data包)
6.mysqld 启动mysql
7.tasklist | findstr mysql #查看mysql是否启动
8.mysql-uroot-p无密码登录
9.mysqladmin -uroot password 123 设置登录密码
10.quit退出
11.windows 系统下干掉任务 tskill mysqld

mysql_第1张图片
图片.png

到此为止,mysql服务端已经安装成功并且客户端已经可以连接上,
注意:当我们每次用mysql启动的时候,闲的麻烦,那么我们把它做成一个系统服务就用mysqld--install
当在搜索框里面输入services.msc就可以看到一个mysql了
注册成服务以后,以后在启动和关闭mysql服务时,仅需要执行如下命令

启动mysql服务
net  start mysql
关闭mysql服务
net stop mysql

忘记密码,破解密码

1.干死mysql(注意:以什么方式启动就要用什么方式把他干掉
2.在cmd中启动:mysqld --skip-grant-tables(跳过所有的授权表)
3.在cmd中登录:mysql
4.输入两条命令:
 update mysql.user set authentication_string = password('123') where user = 'root' and host =   'localhost'
flush privileges 重新刷新权限


mysql_第2张图片
图片.png

5.taskill mysqld 干掉任务
6.正常启动mysql
7.mysql-urooot -p123

破解密码二

(仅限于刚刚安装在数据库的时候,如果对你有用的一堆数据已经存在了,就不要用这种方法,就得用第一种)
1.在mysql的解压目录下新建一个my.ini配置文件那么在
ini配置文件里面写上在ini配置文件上注释有两种#或者;[mysql】
skip-grant-tables (开头的--就不用要了)如果启动了就先关了,然后重新启动一下,登录后,my.ini就生效了
basedir = E:\mysql-5.7.19-winx64
datadir = D:\6_data #如果data指定要保存数据的目录,一定要记得初始化 mysqld --initialize-insecure
完了吧原先的那个数据data干掉

在windows下,为mysql服务指定配置文件

#在mysql的解压目录下,新建my.ini,然后配置
#1. 在执行mysqld命令时,下列配置会生效,即mysql服务启动时生效
[mysqld]
;skip-grant-tables
port=3306
character_set_server=utf8
#解压的目录
basedir=E:\mysql-5.7.19-winx64
#data目录
datadir=E:\my_data #在mysqld --initialize时,就会将初始数据存入此处指定的目录,在初始化之后,启动mysql时,就会去这个目录里找数据

#2. 针对客户端命令的全局配置,当mysql客户端命令执行时,下列配置生效
[client]
port=3306
default-character-set=utf8
user=root
password=123456

#3. 只针对mysql这个客户端的配置,2中的是全局配置,而此处的则是只针对mysql这个命令的局部配置
[mysql]
;port=3306
;default-character-set=utf8
user=hiayan
password=123456

你可能感兴趣的:(mysql)