linux mysql 相关操作、问题

进入linux root切换的操作如下:
XX:~$ su root

查看是否有在运行
ps aux |grep mysqld
/etc/init.d/mysqld status;


查看具体的详细参数
mysql -uroot -p -e "show statusG;

如何启动/停止/重启MySQL
一、 启动方式

1、使用 service 启动:service mysqld start

2、使用 mysqld 脚本启动:/etc/inint.d/mysqld start

3、使用 safe_mysqld 启动:safe_mysqld&

二、停止

1、使用 service 启动:service mysqld stop

2、使用 mysqld 脚本启动:/etc/inint.d/mysqld stop

3、 mysqladmin shutdown


开启MySQL服务后,使用MySQL命令可以登录。
一般使用mysql -uroot -p即可。如果数据库不是本机,则需要加参数,常用参数如下:
1,-h,指定ip地址,默认为localhost
2,-u,指定用户名。
3,-p,指定密码,密码可以接在-p后面输入mysql -uroot -p123456。也也可以mysql -uroot -p回车等提示输入密码时输入,这样输入密码没有回显。


linux下更改MySQL数据库目录位置

1、编辑MySQL的配置文件/etc/my.cnf
   为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。
修改socket=/var/lib/mysql/mysql.sock一行中等号右边的值为:/home/mysql/mysql.sock 。 操作如下:
   vi  my.cnf    (用vi工具编辑my.cnf文件,找到下列数据修改之)
   # The MySQL server
    [mysqld]
    port   = 3306

[client]
    #socket  = /var/lib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行)
    socket  = /home/data/mysql/mysql.sock   (加上此行)


2、修改MySQL启动脚本/etc/init.d/mysql
   最后,需要修改MySQL启动脚本/etc/init.d/mysql,把其中datadir=/var/lib/mysql 一行中,等号右边的路径改成你现在的实际存放路径:home/data/mysql。


查看数据库:
show databases;
  

mysql无法远程连接:
切换到root用户
打开iptables的配置文件:vi /etc/sysconfig/iptables
修改CentOS防火墙
我们添加
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT
全部修改完之后重启iptables:service iptables restart
你可以验证一下是否规则都已经生效:iptables -L

想root2使用root2从任何主机连接到mysql服务器的话。
切换到mysql中
  mysql>GRANT ALL PRIVILEGES ON *.* TO 'root2'@'%'IDENTIFIED BY 'root2' WITH GRANT OPTION;
  或者如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码
  mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
  然后执行:
mysql>FLUSH RIVILEGES;
mysql>exit;
  使修改生效.


数据导入报错:Got a packet bigger than‘max_allowed_packet’bytes的问题
2个解决方法:
1.临时修改:mysql>set global max_allowed_packet=524288000;修改 #512M
2.修改my.cnf,需重启mysql。
在 [MySQLd] 部分添加一句(如果存在,调整其值就可以):
max_allowed_packet=10M

原文地址:https://www.cnblogs.com/LIFE-bug/p/5364216.html