您的位置:首页 > 运维架构 > Linux

Linux下安装配置mysql

2017-02-23 18:17 127 查看
1.删除系统自带mysql

yum -y remove mysql mysql-server


2.删除自带mysql配置文件

rm -rf /etc/my.cnf


3.将进程kill

killall -9 mysqld


4.把mysql的压缩包放到/tmp下

5.把配置文件放到/etc目录下

[root@namenode tmp]# `cp my3306.cnf /etc/`


6.在/下创建mysql3306/logs 目录

[root@namenode home]# mkdir -p /data/mysql3306/logs


7.添加mysql用户

[root@namenode home]# useradd mysql


8.给mysql用户赋权

[root@namenode home]# chown -R mysql:mysql


[root@namenode home]# ll


9.pwd命令查看当前路径

10.把mysql的压缩包解压缩

[root@namenode tmp]# tar -xvf mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz


11.把解压缩完成的文件夹放到/usr/local/mysql目录下

[root@namenode tmp]# cp -rf mysql-5.6.25-linux-glibc2.5-x86_64 /usr/local/mysql


12.进入/usr/local/mysql/scripts目录中找到mysql_install_db

执行这个文件,可以看到很多信息

[root@namenode scripts]# ./mysql_install_db --help


13.初始化mysql 的数据文件,,将以上做的当作参数

[root@namenode scripts]# ./mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql3306 --defaults-file=/etc/my3306.cnf --user=mysql


出现两个ok则代表初始化成功

14.查看一下初始化的表

[root@namenode mysql3306]# cd /data/mysql3306/
[root@namenode mysql3306]# ls


15.启动mysql,在/usr/local/mysql/bin中的mysqld_safe

[root@namenode bin]# cd /usr/local/mysql/bin
[root@namenode bin]# ls


启动的时候加参数–defaults-file和–user

[root@namenode bin]# ./mysqld_safe --defaults-file=/etc/my3306.cnf --user=mysql &


15.1 启动成功,查看进程,结果如下:

[root@namenode bin]# ps -ef|grep mysql


15.2 进入mysql中,第一次进入是不需要密码的

[root@namenode bin]# ./mysql -uroot -S /tmp/mysql3306.sock


15.3 进入成功的结果

mysql> select user from mysql.user;


16.在mysql中授权谁能操作表,%代表所有网段,一下三段赋权完成,所有ip都能访问mysql

mysql> grant all on *.* to root@'%' identified by '123456';


再给本机授权localhost和127.0.0.1

mysql> grant all on *.* to root@'%' identified by '123456';


mysql> grant all on *.* to root@'localhost' identified by '123456';


mysql> grant all on *.* to root@'127.0.0.1' identified by '123456';


17.授权完成后刷新权限表,然后退出mysql 发现不用密码进不去

mysql> flush privileges;


mysql> exit


[root@namenode bin]# ./mysql -uroot -S /tmp/mysql3306.sock


ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)

此时,在命令前面加-p,输入密码可以进入

[root@namenode bin]# ./mysql -p -uroot -S


/tmp/mysql3306.sock

Enter password:

18.报错信息在/data/mysql3306/logs/中的mysql-error.log文件中

19.端口占用解决

先查看谁用了3306

[root@namenode logs]# vi mysql-error.log


[root@namenode logs]# netstat -ntlp|grep 3306


[root@namenode logs]# kill -9 61270


使用nvaicat连接Linux中的mysql

查看本机ip

ip a


20.自动格式化结果集用\G

select * from mysql.user\G;


21.查询用户权限

select user,host,password from mysql.user;


22.mysql远程连接

[root@namenode bin]# ./mysql  -uroot -p123456 -h 192.168.1.10
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql linux