Linux下Mysql的安装及运行(详解)

1、组及用户创建:
sudo groupadd mysql #添加组
sudo useradd -r -g mysql mysql #添加所创建组下的用户
2、官方下载网址
wget http://downloads.mysql.com/archives/get/file/mysql-5.6.27-linux-glibc2.5-x86_64.tar.gz
注:wget命令缺失,下载安装包命令为:yum -y install wget
4、 压缩包下载到/usr/local目录下,对压缩包进行解压,解压命令为:
sudo tar -zxvf mysql-5.6.28-linux-glibc2.5-x86_64.tar.gz
解压后的文件名为:“mysql-5.6.28-linux-glibc2.5-x86_64”。
5、 将解压后的文件mysql-5.6.28-linux-glibc2.5-x86_64重命名为:mysql,
命令为:“sudo mv mysql-5.6.28-linux-glibc2.5-x86_64 mysql”.
6、然后,切入到/usr/local/mysql文件夹下后,依次执行的命令为:
->chown -R mysql . 修改该目录下的所有子目录和文件归mysql用户所有
->chgrp -R mysql . 修改该目录下的所有子目录和文件归mysql组所有
->修改当前目录拥有者为mysql用户:执行命令为:chown -R mysql:mysql ./
->在安装数据库:执行命令为:./scripts/mysql_install_db -user=mysql
(或者./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data)

**注:安装报错**
1)FATAL ERROR: please install the following Perl modules before executing ./scripts        /mysql_install_db:
Data::Dumper
执行: yum install autoconf命令再安装。 

2)[root@c0309eb6021d mysql]# ./scripts/mysql_install_db -user=mysql
Installing MySQL system tables…/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

  1. ->修改当前目录拥有者为root用户:执行命令为:chown -R root:root ./
    ->修改当前data目录拥有者为mysql用户:执行命令chown -R mysql:mysql data(注意:查看用户的权限命令为:ll)
    ->启动mysql服务和添加开机启动mysql服务:添加开机启动:执行命令为:cp support-files/mysql.server /etc/init.d/mysql,把启动脚本放到开机初始化目录
    ->启动mysql服务:执行命令为:service mysql start
    ->执行命令:ps -ef|grep mysql 看到mysql服务说明启动成功
    注:启动报错
    Starting MySQL. ERROR! The server quit without updating PID file (/var/lib/mysql/bogon.pid).
    可能是因为etc目录下的my.cnf和安装目录下的my.cnf文件冲突,删除etc目录下的my.cnf即可。

9、最后修改mysql的root用户密码,root初始化为空的:执行命令为:./bin/mysqladmin -u root password 123456
注:报错
bash: ./bin/mysql: 没有那个文件或目录


		error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)'
		Check that mysqld is running and that the socket: '/tmp/mysql.sock' exists!
1.find / -name mysql.sock
2.rm 	/tmp/mysql.sock
3.软连接
 ln -s  /var/lib/mysql/mysql.sock /tmp/mysql.sock 

10、如何进入到mysql数据库中?首先切入到/usr/local/mysql目录下,然后执行命令为:bin/mysql -u root -p,然后就会弹出"Enter password:",
最后,输入密码为"123456"
11、进入到mysql数据库后,添加远程访问用户,mysql>(输入的命令为:)grant all on . to root@’%’ identified by ‘123456’;
把root用户权限放开(所有远程都可连), mysql>flush privileges;
设置好后退出,mysql>exit;
12、配置不区分大小写:在/usr/local/java/mysql/my.cnf中 [mysql]中文本最下加上 lower_case_table_names=1
13、配置连接超时设置:在/usr/local/java/mysql/my.cnf中 [mysql]中文本最下加上 interactive_timeout=28800000和wait_timeout=28800000
14、修改完之后重启MySQL服务:service mysql restart
http://blog.csdn.net/qq_17776287/article/details/53536761

注:root密码不能被初始化改变
使用rpm包安装完mysql后,按照一下步骤重置root密码:
启动mysql:
#/etc/init.d/mysql start
启动成功后查看mysql进程信息,获取mysqld_safe的安装目录(非常关键):
#ps -ef | grep -i mysql
root 3466 1 0 01:45 pts/1 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/BSC.TEST.pid
mysql 3569 3466 16 01:45 pts/1 00:00:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/lib/mysql/BSC.TEST.err --pid-file=/var/lib/mysql/BSC.TEST.pid
root 3597 3105 0 01:45 pts/1 00:00:00 grep -i mysql

可以看到mysqld_safe的安装位置(上面标蓝色部分):/usr/bin/
接着执行一下命令停止mysql:
/etc/init.d/mysql stop

以安全方式启动mysql:
#/usr/bin/mysqld_safe --skip-grant-tables >/dev/null 2>&1 &

稍等5秒钟,然后执行以下语句:
#/usr/bin/mysql -u root mysql
注意:mysql与mysql_safe目录一样,都是:/usr/bin/下,这个是通过“ps -ef | grep -i mysql”命令得到的。

出现“mysql>”提示符后输入:
mysql> update user set password = Password(‘root’) where User = ‘root’;
回车后执行(刷新MySQL系统权限相关的表):
mysql> flush privileges;
再执行exit退出:
mysql> exit;

mysql更改密码
打开cmd:mysql -uroot -p
进入mysql依次执行下面语句
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘password’ PASSWORD EXPIRE NEVER; #修改加密规则
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘password’; #更新一下用户的密码
FLUSH PRIVILEGES; #刷新权限
重置密码:alter user ‘root’@‘localhost’ identified by ‘xzx123456’;
注报错:ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)

修改密码加密方式,改成mysql_native_password
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘root’;
然后修改密码:
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘password’;
或者执行命令flush privileges;使权限配置项立即生效。

猜你喜欢

转载自blog.csdn.net/hjmlyj/article/details/83791979