如何在linux中安装mysql

如何在linux中安装mysql,第1张

我这是centos系统,ubantu不适用!!!

我这是centos系统,ubantu不适用!!!

我这是centos系统,ubantu不适用!!!

点击右下角展开,否则没有自动换行!!!!

点击右下角展开,否则没有自动换行!!!!

点击右下角展开,否则没有自动换行!!!!

重要的事情说三遍

练习用的话直接yum -y install mysql mysql-server

也可以使用源码安装

先把rpm格式的mysql删除,否则初始化失败rpm -e mysql-server mysql --nodeps   //忽略依赖关系删除

yum -y install ncurses-devel  //安装依赖包

tar xf cmake-2.8.12.tar.gz -C /usr/src/  //mysql需要孝配cmake支持

cd /usr/src/cmake-2.8.12/ //进入解压路径

./configure && gmake && gmake install   //安装cmake

groupadd mysql         //创建mysql组

useradd -M -s /sbin/nologin -g mysql mysql    //创建mysql用户,并加入mysql组里

tar xf mysql-5.7.2-m12.tar.gz -C /usr/src/     //解压mysqlcd /usr/src/mysql-5.7.2-m12/        //进入解压路径

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DSYSCONFDIR=/etc && make && make install //安装选项

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql     //主程序安装目录

-DDEFAULT_CHARSET=utf8                         //默认字符集为 utf8

-DDEFAULT_COLLATION=utf8_general_ci         //默认的字符集校对规则

-DWITH_EXTRA_CHARSETS=all                     //安装所有字符集

-DSYSCONFDIR=/etc          拆慎型                   //配置文件存放目录

make && make install  //开始make

优化步骤

cp support-files/my-default.cnf /etc/my.cnf

cp support-files/mysql.server /etc/init.d/mysqld

chmod +x /etc/init.d/mysqld

echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile

. /etc/profile //注意“.”后面有空格

chown -R mysql:mysql /usr/local/mysql/

/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --user=mysql  //初始化

--basedir=/usr/local/mysql/         //指定安装目录(产品目录)

--datadir=/usr/local/mysql/data     //指定数据目录

--user=mysql                        //指定用户身份旅猜

service mysqld start

Starting MySQL..............                               [确定]

mysqladmin -u root password '123456'    //设置成自己的密码

我是5.7的版本有可能一定几率启动时报错,看下mysql的配置文件,里面的mysql.sock文件找不到,解决方法如下:

find / -name mysql.sock

找到后复制这个路径

vim /etc/my.cnf

找到sock=/data/sock这一行,把后面的路径改成刚才找到的路径然后重启mysql即可。

如果还报错就告诉我

在linux下安装mysql数据库并配置的流程比较繁琐,需要耐心调试,具体方法和步骤如下:

1.查找以前是否搜喊慎安装有mysql,使用下面命令

rpm -qa|grep -i mysql

如果显示有如下包则说明已安装mysql

mysql-4.1.12-3.RHEL4.1

mysqlclient10-3.23.58-4.RHEL4.1

2.如果已安装,则需要删除已安装的数据库,使用以下命令来删除数据库

删除命令:rpm -e --nodeps 包名

( rpm -ev mysql-4.1.12-3.RHEL4.1 )

删除老版本mysql的开发头文件和库

命令:rm -fr /usr/lib/mysql

rm -fr /usr/include/mysql

注意:卸载后/var/lib/mysql中的数据及/etc/my.cnf不会删除,如果确定没用后就手工删除

rm -f /etc/my.cnf

rm -fr /var/lib/mysql

3.下载mysql的rpm包

可以通过wget下载具体的地址因为不能用链接请大家去官网去找

(1)MySQL-server-5.6.10-1.rhel5.x86_64.rpm:MySQL服务器世敬;

(2)MySQL-client-5.6.10-1.rhel5.x86_64.rpm:MySQL客户端;

(3)MySQL-devel-5.6.10-1.rhel5.x86_64.rpm:Mysql开发依赖包。

下载后放到Liunx服务器中。

4.安装MySQL Server的rpm包

rpm -ivh MySQL-server-5.6.21-1.linux_glibc2.5.x86_64.rpm

安装完成后会生成root用户的随机密码渗宴,请使用“cat /root/.mysql_secret”或类似命令进行查看。

5.安装MySQL客户端

rpm -ivh MySQL-client-5.6.21-1.linux_glibc2.5.x86_64.rpm

6.安装MySQL开发依赖包

rpm -ivh MySQL-devel-5.6.21-1.linux_glibc2.5.x86_64.rpm

7.启动msyql

安装完成后mysql是没有启动的,运行mysql命令会提示如下错误:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

可使用如下命令启动MySQL:

service mysql start

或者使用如下命令:

/etc/init.d/mysql start

可使用SET PASSWORD命令修改root用户的密码,参考如下:SET PASSWORD = PASSWORD('root123456')

8.登录MySQL

使用mysql命令登录MySQL服务器,运行MySQL的命令时,会提示需要设置root用户密码。

9.设置开机自启动

/etc/init.d/mysql start

设置完成后重启系统,使用natstat –nat命令可看到MySQL的3306端口。

10.至此已经安装好了mysql数据库,当然现在我们的数据库还不支持远程连接,远程连接会出现以下代码:1130,ERROR 1130: Host 192.168.0.10 is not allowed to connect to this MySQL server,可以通过以下以下来解决。

11.改表法:在本机登入mysql后,更改“mysql”数据库里的“user”表里的“host”项,从”localhost”改为'%'。

mysql>

mysql>use mysql

mysql>select 'host' from user where user='root

12.到此为止,mysql数据库在linux中安装完毕。

1. 安装MySQL数据库

先从MySQL官网下载MySQL,然后进入所下载的安装文件所在目录拦悔,运行如下命令进行安装,其中MySQL-server-community-5.1.56-1.rhel5.i386.rpm为刚刚下载的MySQL数据库服务器的rpm包,然后使用/etc/rc.d/init.d/mysqlrestart命令重启MySQL服务:

[root@localhost ~]# rpm -ivh MySQL-server-community-5.1.56-1.rhel5.i386.rpm

[root@localhost ~]# /etc/rc.d/init.d/mysql restart

Shutting down MySQL..[确定]

Starting MySQL..[确定]

2. 配置MySQL数据库字符集

备注:配置MySQL数据库字符集的目的是方便的使用数据库,无需在每次连接的时候都要临时设置数据库字符集的,个人不建议采用这种方法,真正的工程项目都应该在连接数据库时临时设置数据库字符集,如此才便于系统的移植,而且又不会影响数据库服务器中的其他数据库的使用!

安装完成之后,需要配置MySQL的字符集配置,首先需要查找MySQL的配置文件的位置,由于MySQL的配置文件名是以.cnf结尾的,因此可用如下命令进行查找:

[root@localhost ~]# find / -iname '*.cnf' -print

/usr/share/mysql/my-large.cnf

/usr/share/mysql/my-medium.cnf

/usr/share/mysql/my-innodb-heavy-4G.cnf

/usr/share/mysql/my-huge.cnf

/usr/share/mysql/my-small.cnf

/usr/share/doc/MySQL-server-community-5.1.56/my-large.cnf

/usr/share/doc/MySQL-server-community-5.1.56/my-medium.cnf

/usr/share/doc/MySQL-server-community-5.1.56/my-innodb-heavy-4G.cnf

/usr/share/doc/MySQL-server-community-5.1.56/my-huge.cnf

/usr/share/doc/MySQL-server-community-5.1.56/my-small.cnf

/etc/简橘正pki/tls/openssl.cnf

输入完命令“find / -iname '*.cnf'-print”回车后,屏幕便显示搜索到的MySQL配置文件,然后拷贝my-large.cnf、my-medium.cnf 、my-innodb-heavy-4G.cnf 、my-huge.cnf、my-small.cnf中任意的一个到/etc目录下,并命伍改名为my.cnf,其命令如下所示:

[root@localhost ~]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

[root@localhost ~]# vi /etc/my.cnf

然后,使用vi编辑器修改/etc/my.cnf文件,在[client]下添加: “default-character-set=gb2312”;在[mysqld]下添加:“default-character-set=gb2312”。如下所示:

# The following options will be passed to all MySQL clients

[client]

default-character-set=gb2312

#password = your_password

port= 3306

socket = /var/lib/mysql/mysql.sock

# Here follows entries for some specific programs

# The MySQL server

[mysqld]

default-character-set=gb2312

port= 3306

socket = /var/lib/mysql/mysql.sock

skip-locking

key_buffer_size = 16M

max_allowed_packet = 1M

table_open_cache = 64

sort_buffer_size = 512K

net_buffer_length = 8K

按一下Esc键,输入“:wq”后回车保存配置文件,输入“/etc/rc.d/init.d/mysqlrestart”重启MySQL服务,如下所示:

[root@localhost ~]# /etc/rc.d/init.d/mysql restart

Shutting down MySQL..[确定]

Starting MySQL..[确定]

最后,我们来验证MySQL服务器配置是否成功,首先登录MySQL,输入“mysql –uroot -p”回车,系统提示输入密码,登录成功后进入MySQL命令模式,如下所示:

[root@localhost ~]# mysql -uroot -p

Enter password:

Welcome to the MySQL monitor. Commands end with or \g.

Your MySQL connection id is 2

Server version: 5.1.56-community-log MySQL Community Server (GPL)

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

在MySQL命令模式下分别输入“show variables like'collation_%'”、“show variables like 'character_set_%'”回车后显示字符集设置,如下所示:

mysql>show variables like 'collation_%'

+----------------------+-------------------+

| Variable_name| Value |

+----------------------+-------------------+

| collation_connection | gb2312_chinese_ci |

| collation_database | gb2312_chinese_ci |

| collation_server | gb2312_chinese_ci |

+----------------------+-------------------+

3 rows in set (0.05 sec)

mysql>show variables like 'character_set_%'

+--------------------------+----------------------------+

| Variable_name| Value |

+--------------------------+----------------------------+

| character_set_client | gb2312 |

| character_set_connection | gb2312 |

| character_set_database | gb2312 |

| character_set_filesystem | binary |

| character_set_results| gb2312 |

| character_set_server | gb2312 |

| character_set_system | utf8 |

| character_sets_dir | /usr/share/mysql/charsets/ |

+--------------------------+----------------------------+

8 rows in set (0.00 sec)

mysql>

根据以上查询结果可知我们设置的MySQL数据库配置信息已经生效,至此完成MySQL的服务器的安装与配置。

3.关于MySQL数据库的一些注意事项

3.1 远程连接mysql速度慢

解决方法:

在MySQL服务器的配置(/etc/my.cnf)中增加一个如下配置后速度飞快。

[mysqld]

skip-name-resolve

备注:这样就能禁用DNS解析,连接速度会快很多。不过,这样的话就不能在MySQL的授权表中使用主机名了而只能用ip格式。

3.2 重启数据库后,发现无需密码(或者任何密码)即可以连接

解决方法:

检查你的MySQL配置文件(/etc/my.cnf)中是不是多了一条语句:“skip-grant-tables”,删除(注释)该语句,重新配置MySQL密码,再次重启MySQL服务即可!

备注:若使用skip-grant-tables系统将对任何用户的访问不做任何访问控制,但可以用 mysqladmin flush-privileges或mysqladmin reload来开启访问控制默认情况是show databases语句对所有用户开放,如果mysql服务器没有开远程帐户,就在/etc/my.cnf里面加上skip-grant-tables。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8256316.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存