Recentemente, eu me pego escrevendo mais SQL, no Windows com MSSQL e LinqPad e, embora eu queira experimentar no Ubuntu para ter mais controle sobre os bancos de dados e não tenho amor perdido pelo MSSQL, eu vou usar o MySQL. deseja encontrar um equivalente ao LinqPad.
O que quero dizer com isso em termos mais concretos não é a ferramenta mais poderosa, mas sim um bloco de rascunho como o LinqPad, onde um novato pode escrever rapidamente uma consulta e executá-la para ver o que acontece, também algo que é rápido para iniciar. e corra.
O LinqPad é basicamente um front-end de interface gráfica para o MS-SQL Server. Nesse sentido, você tem várias opções, mas lembre-se de que precisará instalar o servidor MySQL ( sudo apt-get install mysql-serverno terminal) para usá-las. Além disso, você provavelmente desejará criar e preencher um banco de dados para brincar. A maior diferença será que você não poderá usar a sintaxe do Linq, porque o Linq é uma sintaxe .Net (no entanto, é possível obter sintaxes semelhantes entrando em algumas das linguagens e estruturas, sendo a mais semelhante provavelmente Ruby ou Python).
Aplicativo de terminal interno do MySQL. Você precisará instalar o mysql-client (o que provavelmente será necessário se você desenvolver algum desenvolvimento em PHP / Python / Ruby), mas, em seguida, poderá abrir um terminal e digitar mysql -u[a mysql user] -p( -pse o usuário do mysql tiver uma senha , caso contrário, apenas deixe a opção -pdesativada). Isso exibirá um console mysql, no qual você poderá executar consultas SQL diretamente.
MySQL Workbench Esta é uma GUI de gerenciamento de banco de dados com mais recursos, mais semelhante às Ferramentas de Gerenciamento que o LinqPad, mas possui um editor de consultas SQL que permite executar consultas de acordo com o seu coração. Você pode encontrar isso nos repositórios como o mysql-workbenchpacote.
PHPMyAdmin Este é um local intermediário e é uma solução baseada na Web. Você precisará instalar os php5e php5-mysqlpacotes, e um servidor web (como lighttp ou apache, seja de que PhpMyAdmin deve dar-lhe a opção de configurar), em seguida, instalar o phpmyadminpacote. Abra seu navegador e navegue até o URL que você criou para ele, e você pode jogar com SQL na guia "SQL", novamente para o conteúdo do seu coração.
Pessoalmente, prefiro o Workbench, ou apenas o aplicativo de terminal simples para a maioria das coisas.
Atualização : O JetBrains está trabalhando em um cliente SQL plug-in / independente, semelhante ao MySQL Workbench. A versão autônoma é chamada 0xDBE, mas você pode obtê-lo como um plug-in se já usa um dos outros pacotes do JetBrains (WebStorm, PHPStorm etc.). Trata-se de um passo ou dois abaixo do poder do Workbench em algumas áreas (não possui a engenharia reversa e a modelagem de dados do Workbench), mas tem as vantagens de integrar-se ao que pode ser seu ambiente de desenvolvimento existente e oferecer suporte a vários sistemas de banco de dados, se for o que você precisa . Também é multiplataforma, como o restante de seus produtos IDE. Uso-o há algum tempo como parte do programa de acesso antecipado e provou ser sólido e uma ótima ferramenta semelhante a bloco de rascunho (embora um pouco pesado comparado ao LinqPad se você usar a versão autônoma).
Atualização 2016: Sqlectron é um novo cliente SQL leve de plataforma cruzada, construído no sistema Electron do Github. Ainda não tive chance de jogar com ele, mas, pelo que entendi, é uma opção mais leve para ambientes Mac e Linux do que algumas das opções anteriores.
Obrigado, não sabia sobre essa ferramenta, ele até consulta Stackexchange.
Luis Alvarado
1
Em vez de MySQL, considere usar o MariaDB - um fork do MySQL do criador original do MySQL, Monty Widenius. O MarisDB é um drop-in aprimorado e compatível com binário para o MySQL e liberta você da potencial tirania do Oracle no futuro, dependendo de onde eles levam o MySQL. Veja www.mariadb.org
Clive van Hilten
15
O LinqPad é algo um pouco diferente das ferramentas de gerenciamento de banco de dados, como as que você lista, embora exista uma sobreposição de recursos. As ferramentas de gerenciamento de banco de dados geralmente são completas em relação aos seus respectivos bancos de dados. O LinqPad, por exemplo, não faz usuários, segurança, procedimentos armazenados, gatilhos, etc. - ou de fato qualquer manipulação de dados que resulte em qualquer atualização não trivial e instruções de inserção. Por outro lado, o LinqPad é muito útil como um .NET REPL genérico. Como tal, eu o recomendo para quem faz .NET, mesmo na ausência de qualquer trabalho no banco de dados.
John John
3
O LinqPad não é de forma alguma um front end para o MSSQL - é para escrever consultas no Linq. O Linq pode atingir uma enorme variedade de fontes de dados.
Fergal Moran 06/10
2
Oi @Shauna Você etiquetou meu nome com falta, então perdi sua resposta. Com o devido respeito, o LinqPad não era um front-end para MSSQL em 2013, não era em 2016 e ainda não é agora. De fato, nunca foi. É uma interface do usuário para escrever consultas LINQ. O fato de você poder executá-los no MSSQL foi incidental, eu o usei principalmente para XML.
Fergal Moran
37
Eu tenho que discordar da base da resposta de Shauna; O LINQPad não é um GUI ou front-end do MS-SQL. É um bloco de notas .NET que pode gerar um contexto LinqToSql para contextos de dados suportados. Isso o torna fundamentalmente diferente dos clientes SQL típicos (como SQL Server Management Studio ou MySql Workbench).
O LINQPad é fornecido com drivers que suportam MS-SQL, no entanto, drivers adicionais podem ser facilmente instalados e podem adicionar suporte para outras fontes de dados - incluindo o MySql.
Para sua pergunta específica, a resposta é que o mais próximo que você encontrará que pode ser executado nativamente no Linux seria um aplicativo .NET personalizado escrito com Mono (a versão 2.6 adicionou o suporte LINQtoSql ).
No entanto, se você precisar usar o LINQPad com o MySql, poderá facilmente usar o driver IQ. Você ainda precisará do Windows para executar o LINQPad (ou, possivelmente, wine). Pessoalmente, mantenho um Windows VirtualBox na minha estação de desenvolvimento Linux especificamente para algumas ferramentas, como o LINQPad, que são apenas para Windows.
Embora as coisas possam mudar em um futuro relativamente próximo com o código aberto da estrutura .Net, o LinqPad atualmente não pode ser executado nativamente em sistemas não-Windows devido ao uso do WPF e à falta de implementação do WPF pelo Mono ( stackoverflow.com/a/3682218/ 570040 ). Atualmente, o WineHQ não possui informações sobre o LinqPad, especificamente, e parece usar o Mono para sua implementação .Net padrão de qualquer maneira ( forum.winehq.org/viewtopic.php?t=14392 ). .Net trabalho adequada pode (mais ou menos, pelo menos), mas pode ser peludo de configurar ( appdb.winehq.org/objectManager.php?sClass=version&iId=17886 )
Shauna
1
Lembro (mas posso estar errado) que o LINQPad usa alguns componentes de terceiros que são apenas para Windows. De qualquer forma, o MySQL Workbench tornou-se uma ferramenta decente, totalmente à vontade no Linux, e se o LINQPad for realmente necessário, uma máquina Windows VirtualBox funciona muito bem. poucos utilitários (principalmente o Fiddler, mais) e é uma maneira conveniente de ter as ferramentas do Windows quando você realmente precisa delas em um ambiente Linux.
STW
2
+1 na outra resposta está incorreta, o LINQPad é muito mais do que uma GUI para o SQL Server.
Eu tenho que discordar da base da resposta de Shauna; O LINQPad não é um GUI ou front-end do MS-SQL. É um bloco de notas .NET que pode gerar um contexto LinqToSql para contextos de dados suportados. Isso o torna fundamentalmente diferente dos clientes SQL típicos (como SQL Server Management Studio ou MySql Workbench).
O LINQPad é fornecido com drivers que suportam MS-SQL, no entanto, drivers adicionais podem ser facilmente instalados e podem adicionar suporte para outras fontes de dados - incluindo o MySql.
Para sua pergunta específica, a resposta é que o mais próximo que você encontrará que pode ser executado nativamente no Linux seria um aplicativo .NET personalizado escrito com Mono (a versão 2.6 adicionou o suporte LINQtoSql ).
No entanto, se você precisar usar o LINQPad com o MySql, poderá facilmente usar o driver IQ. Você ainda precisará do Windows para executar o LINQPad (ou, possivelmente, wine). Pessoalmente, mantenho um Windows VirtualBox na minha estação de desenvolvimento Linux especificamente para algumas ferramentas, como o LINQPad, que são apenas para Windows.
fonte