mysql安装linux_二进制包安装

1.下载(本地下载www.mysql.com ----->DOWNlOADS------>Archives----->MySQL Community Server---->Linux - Generic)例如:mysql-8.0.3-rc-linux-glibc2.12-x86_64.tar
(在线下载wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz)
2.解压
tar -zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.6.36-linux-glibc2.5-x86_64 /usr/local/mysql
3.创建一个mysql用户,并安装mysql,进行初始化,指定用户为mysql,指定数据存放地址/data/mysqldata(没有则需要创建)
useradd mysql
./scripts/mysql_install_db --user=mysql --datadir=/usr/local/data/mysqldata
4.拷贝mysql的模板配置文件,mysql的配置文件存放在/etc/下,并且名字固定为my.cnf,如果不想存放在这个目录下,那么启动的时候需要指定配置文件
cp support-files/my-default.cnf /etc/my.cnf
5.拷贝启动的脚本
cp support-files/mysql.server /etc/init.d/mysqld
6.编辑启动脚本
vim /etc/init.d/mysqld
找到basedir和datadir将内容更改如下:
basedir=/usr/local/mysql
datadir=/usr/local/data/mysqldata
7.更改启动脚本的配置文件为755
chmod 755 /etc/init.d/mysqld
8. 将mysqld加入开启启动
chkconfig --add mysqld
9.启动mysql
1>. 使用命令启动mysql:
service mysqld start
Starting MySQL............ SUCCESS!
2>. 使用脚本启动
/etc/init.d/mysqld start
10.停止mysql
service mysqld stop
Shutting down MySQL.. SUCCESS!
11.以命令行的方式启动脚本,--defaults-file指定配置文件,指定用户,指定目录,最后加上&符号,放到后台执行
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql --datadir=/data/mysql &
12.以命令行的方式启动的mysql脚本不能直接stop,可以使用killall停止服务
使用killall会停止当前的写读操作,再将没有写入到磁盘中的数据写到磁盘里面去,写完之后再将进程杀死。
如果遇到mysql的进程杀不死,可能说明数据量比较大,在慢慢写入磁盘,这时候不要使用kill -9强制杀死进程,可能会损坏数据。
killall mysqld
(问题:若缺少发现缺少Perl相关模组,则出现FATAL ERROR: please install the following Perl modules before executing /usr/bin/mysql_install_db:
Data::Dumper)其他问题看http://www.jb51.net/article/97103.htm
若 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)则重置密码解决
简易步骤:

一般这个错误是由密码错误引起,解决的办法自然就是重置密码。

假设我们使用的是root账户。

1.重置密码的第一步就是跳过MySQL的密码认证过程,方法如下:

#vim /etc/my.cnf(注:windows下修改的是my.ini)

在文档内搜索mysqld定位到[mysqld]文本段:
/mysqld(在vim编辑状态下直接输入该命令可搜索文本内容)

在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程,如下图所示:

保存文档并退出:

#:wq
2.接下来我们需要重启MySQL:

/etc/init.d/mysql restart(有些用户可能需要使用/etc/init.d/mysqld restart)

3.重启之后输入#mysql即可进入mysql。

 

4.接下来就是用sql来修改root的密码

mysql> use mysql;
mysql> update user set password=password("你的新密码") where user="root";
mysql> flush privileges;
mysql> quit

到这里root账户就已经重置成新的密码了。

5.编辑my.cnf,去掉刚才添加的内容,然后重启MySQL。大功告成!

 

 网上有很多关于这个问题的解决说明,很多刚接触的朋友可能比较迷惑的是在自己的平台上找不到my.cnf或者my.ini文件,如果你是Linux,使用如下方式可以搜索到:

至于windows平台,去安装目录下找一下my.ini吧。

 

 

 

 

 

注:开通外网连接或者1130错误码

远程连接Mysql服务器的数据库,错误代码是1130,ERROR 1130: Host xxx.xxx.xxx.xxx  is not allowed to connect to this MySQL server  
猜想是无法给远程连接的用户权限问题。 
这样子操作mysql库,即可解决。 
 
在本机登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'即可 
mysql -u root -p  
mysql;use mysql;  
mysql;select 'host' from user where user='root';  
mysql;update user set host = '%' where user ='root';  
mysql;flush privileges;  
mysql;select 'host'   from user where user='root'; 
 
 
第一句:以权限用户root登录  
第二句:选择mysql库  
第三句:查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)  
第四句:修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址  
如果这步出错"ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'" 由说明该记录有了,跳过这步
第五句:刷新MySQL的系统权限相关表  
第六句:再重新查看user表时,有修改。。  
重起mysql服务即可完成。 

posted @ 2018-03-02 11:10  危常焕  阅读(175)  评论(0编辑  收藏  举报